c# - AutoMapper 版本 9.0.0 - IMappingOperationOptions 上没有 ConfigureMap() 方法

标签 c# upgrade automapper-9

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

IMappingOperationOptions<TSource, TDestination> does not contain a definition for ConfigureMap and no accessible extension method 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 中完成相同的功能。

最佳答案

我遇到了同样的问题(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); 

关于c# - AutoMapper 版本 9.0.0 - IMappingOperationOptions 上没有 ConfigureMap() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59602945/

相关文章:

c# - 在c#.net中将 'String'转换为MD5 'String'的Base64编码

c# - 如何通过套接字编码(marshal) .Net 接口(interface)?

c# - 使用linq to xml遍历xml树中的每个元素

java - 您如何在客户处升级/更新 Web Java 项目?

c# - 我不断收到 "needs to have a constructor with 0 args or only optional args. (Parameter ' 类型')”

c# - 为什么 HTML Agility Pack HtmlDocument.DocumentNode 为空?

mysql - 将WSO2物联网服务器3.1.0升级到3.3.0

mysql - 错误 1146 (42S02) : Table 'mysql.general_log' doesn't exist

c# - AutoMapper - 从 v8 升级到 v9 后不使用泛型