- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有这样的情况,我想将实体映射到 View 模型并返回。我必须使用 ForMember()
显式指定映射,因为它们的属性不共享完全相同的名称。这是我的类(class)的一个简短示例:
public class PartTwo {
public int Integer { get; set; }
}
public class PartTwoViewModel {
public int PartInteger { get; set; }
}
我想这样使用它们:
Mapper.CreateMap<PartTwo, PartTwoViewModel>()
.ForMember(dst => dst.PartInteger, opt => opt.MapFrom(src => src.Integer))
.ReverseMap();
var partTwoViewModel = new PartTwoViewModel() { PartInteger = 42 };
var partTwo = Mapper.Map<PartTwoViewModel, PartTwo>(partTwoViewModel);
Assert.AreEqual(partTwoViewModel.PartInteger, partTwo.Integer);
但它与 PartInteger
属性与 Integer
不匹配。 (整数
为0
。)
有办法让这个工作成功吗? (当两个类的属性具有相同的名称时,它就可以工作。)我是否必须在方法 ForMember()
中设置某种选项?
最佳答案
ReverseMap
返回表示反转映射的 IMappingExpression
。一旦调用,后续调用将用于配置 map 的反转。
这是一个例子:
Mapper.CreateMap<CartItemDto, CartItemModel>()
.ForMember(dest => dest.ExtendedCost, opt => opt.Ignore())
.ReverseMap()
.ForMember(dest => dest.Pricing, opt => opt.Ignore())
这将忽略相反方向的定价
字段。
关于.net - Automapper:使用 ReverseMap() 和 ForMember() 进行双向映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13490456/
我有以下两个类: public class ReferenceEngine { public Guid ReferenceEngineId { get; set; } public s
当我创建映射 1->2 然后反转它时,我希望得到与映射 2->1 和反转相同的结果。正确的?但是AssertConfigurationIsValid一种情况成功,另一种情况失败。 例如, public
这是我的映射配置: Mapper.Initialize(config => { config.SourceMemberNamingConvention = new LowerUnderscor
我有这样的情况,我想将实体映射到 View 模型并返回。我必须使用 ForMember() 显式指定映射,因为它们的属性不共享完全相同的名称。这是我的类(class)的一个简短示例: public c
我正在尝试使用 AutoMapper 在表达式中的两个模型之间进行映射,但收到来自 AutoMapper 的错误:“错误映射类型”以及“未将对象引用设置为对象实例”的内部异常消息。 我按照 Githu
我是一名优秀的程序员,十分优秀!