Blu*_*ppy 39 model viewmodel automapper asp.net-mvc-3
这可能是一个愚蠢的问题!(n00b到AutoMapper和时间短!)
我想使用AutoMapper从EF4实体映射到ViewModel类.
1)如果我打电话
CreateMap<ModelClass, ViewModelClass>()
Run Code Online (Sandbox Code Playgroud)
然后我也需要打电话
CreateMap<ViewModelClass, ModelClass>()
Run Code Online (Sandbox Code Playgroud)
执行相反的操作?
2)如果两个类具有相同的属性名称,那么我是否需要一个CreateMap语句,或者这只是针对"特定/自定义"映射?
Iva*_*tev 110
关于偶然发现这个问题的人的信息.现在似乎有一种通过.ReverseMap()在CreateMap()配置链末尾添加调用来实现反向映射的内置方法.
Dar*_*rov 15
在AutoMapper中,您有源类型和目标类型.因此,只有拥有相应的CreateMap时,才能在此Source类型和Destination类型之间进行映射.那么回答你的问题:
Map<TSource, TDest>告诉您源和目标类型之间不存在映射时将抛出异常.我用扩展方法做两种方式的映射
public static IMappingExpression<TDestination, TSource> BothWays<TSource, TDestination>
(this IMappingExpression<TSource, TDestination> mappingExpression)
{
return Mapper.CreateMap<TDestination, TSource>();
}
Run Code Online (Sandbox Code Playgroud)
用法:
CreateMap<Source, Dest>().BothWays();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13303 次 |
| 最近记录: |