AutoMapper v15缺失AddAutoMapper(Assembly[])重载,手动注册失败如何解决?
解决AutoMapper v15.0.1注册编译错误的方案
在AutoMapper v15版本中,DI注册的API发生了变更——原来直接传递程序集给AddAutoMapper的重载被移除,这就是你遇到编译错误的原因。可以通过以下两种方式修复:
方式一:在配置委托中指定程序集
修改注册代码,通过IMapperConfigurationExpression的AddMaps方法添加包含映射配置的程序集:services.AddAutoMapper(cfg => { cfg.AddMaps(typeof(AssemblyReference).Assembly); });方式二:分开调用注册与添加程序集
先注册AutoMapper基础服务,再单独调用AddMaps扩展方法指定程序集:services.AddAutoMapper(); services.AddMaps(typeof(AssemblyReference).Assembly);
两种方式都能让AutoMapper正确扫描指定程序集中的映射配置文件,恢复正常功能。
内容的提问来源于stack exchange,提问作者A.SOW
相关产品推荐
相关产品推荐

