使用 LightInject 配置 AutoMapper

Configure AutoMapper using LightInject

有谁知道如何使用 LightInject 配置 AutoMapper? AutoMapper 文档只有 Ninject 和 Simple Injector 的示例。

我在尝试注册 AutoMapper 配置时遇到困难。

我正在使用 ASP.NET MVC C#。

public class CompositionRoot : ICompositionRoot
{
    public void Compose(IServiceRegistry serviceRegistry)
    {
      serviceRegistry.Register(c => new AutoMapperConfiguration());
    }
}

public static class AutoMapperConfiguration
{
    public AutoMapperConfiguration()
    {
        Mapper.Initialize(cfg =>
           cfg.AddProfiles(typeof(Namespace.Class).Assembly)
        );
    }
}

我明白了。下面的代码位于 CompositionRoot 中,其中使用 IServiceRegistry 注册了工厂。我会将 var config = new MapperConfiguration(cfg => cfg.AddProfiles(typeof(CustomProfileClass).Assembly)); 代码移动到我将创建的自定义 MapperConfiguration class。

public class CompositionRoot : ICompositionRoot
{
    public void Compose(IServiceRegistry serviceRegistry)
    {
      var config = new MapperConfiguration(cfg => cfg.AddProfiles(typeof(CustomProfileClass)));
      serviceRegistry.Register(c => config.CreateMapper());
    }
}