Cow*_*org 4 c# automapper asp.net-core
所以,我有一个 ObjectFrom 到 ObjectTo 的映射。' 所有映射都可以通过 ObjectFrom.propX -> ObjectTo.propX2 完成。但是 ObjectTo 中还有一个属性需要有一个固定值(对于每个映射),我们称之为“CallerName”,它与 ObjectFrom 无关。
我可以以某种方式在映射中添加额外的参数吗?我不想包装我的 ObjectFrom 也不使用 AfterMap(),因为我想强制调用者提供 CallerName 以确保其被填充。
当谷歌搜索这个问题时,我发现一个解决方案比另一个更复杂。有没有一种简单的方法可以做到这一点?
(Asp Net Core,最新版本的automapper)
调用时,Map您可以使用键值和自定义解析器传入额外的对象,以从映射上下文中获取对象。
mapper.Map<Source, Dest>(src, opt => opt.Items["Foo"] = "Bar");
Run Code Online (Sandbox Code Playgroud)
这是为此自定义解析器设置映射的方法
cfg.CreateMap<Source, Dest>()
.ForMember(dest => dest.Foo, opt => opt.MapFrom((src, dest, destMember, context) => context.Items["Foo"]);
Run Code Online (Sandbox Code Playgroud)
文档.
| 归档时间: |
|
| 查看次数: |
1713 次 |
| 最近记录: |