5

我正在将 Visual Studio 2019 解决方案的项目从 AutoMapper 版本 8.0.0 升级到版本 9.0.0。代码中有许多地方调用了 ConfigureMap() 方法。构建输出状态中的错误:

IMappingOperationOptions<TSource, Tdestination> 不包含 ConfigureMap 的定义,也没有可访问的扩展方法 ConfigureMap...

以下是当前代码的示例:

Mapper.Map(TSource, TDestination, opt => opt.ConfureMap());

Mapper.Map(TSource, TDestination, opt => opt.ConfigureMap().ForMember(dest => dest.someBool, m => m.MapFrom(src => src.someBoolVal));

我查看了 AutoMapper 的从 8.0.0 升级到 9.0.0 的文档,但没有提到不推荐使用 ConfigureMap() 方法。但是,当我搜索 VS 的对象浏览器时,它没有出现。

如果有人可以分享如何在 9.0.0 中完成相同功能的代码,我将不胜感激。

4

1 回答 1

3

我有同样的问题(IMappingOperationOptions 不包含 ConfigureMap 的定义),我用不同的方法解决了。

//Step 1. Create a MapperConfiguration
var customMapConfig = new MapperConfiguration(cfg => {
    cfg.CreateMap<originClass, destClass>()
        .ForMember(dest => dest.FieldA, opt => opt.Ignore())
        .ForMember(dest => dest.FieldB, opt => opt.Ignore());
});

//Step 2. Create the custom Mapper
var customMapper = customMapConfig.CreateMapper();

//Step 3. Execute
customMapper.Map<originClass, destClass>(objOrigin, objDest); 
于 2020-01-14T21:34:34.480 回答