无法关注AutoMapper的文档 - CreateMapper在哪里?

时间:2016-03-14 16:07:56

标签: automapper automapper-4

从AutoMapper的静态API升级时我遇到了问题。

我跟随this page上的示例,其中说明了

  

4.1及之前的典型用法是:

Mapper.Initialize(cfg => {
     cfg.AddProfile<AppProfile>();
     cfg.CreateMap<Source, Dest>(); });

var dest = Mapper.Map<Source, Dest>(new Source());
     

在4.2及更高版本中,这看起来像:

var config = new MapperConfiguration(cfg => {
     cfg.AddProfile<AppProfile>();
     cfg.CreateMap<Source, Dest>();
});

var mapper = config.CreateMapper();
var dest = mapper.Map<Source, Dest>(new Source());

然而,在通过NuGet使用v4.2.1时,我无法看到这个&#39; CreateMapper&#39;方法

我应该使用什么?

1 个答案:

答案 0 :(得分:1)

我已经意识到造成我问题的原因。

为了在应用程序范围内使用MapperConfiguration,我将其存储为静态属性:

public static IMapperConfiguration { get; private set; }

public static void Init()
{
    MapperConfiguration = new MapperConfiguration(...);
    ...
    MapperConfiguration.    // CreateMapper() not available
}

此处的问题是CreateMapper方法仅适用于MapperConfiguration ,而不适用于IMapperConfiguration 界面