从DataReaderMapping单元测试中,更改Establish_context方法(Mapper.Map行)
protected override void Establish_context()
{
Mapper.CreateMap<IDataRecord, DTOObject>()
.ForMember(dest => dest.Else, options => options.MapFrom(src => src.GetDateTime(src.GetOrdinal(FieldName.Something))));
_dataRecord = new DataBuilder().BuildDataRecord();
var result = new DTOObject();
Mapper.Map<IDataRecord, DTOObject>(_dataRecord, result);
_result = result;
}
我已将其跟踪到DataReaderMapper.cs中的MapPropertyValues方法。
context.TypeMap.GetPropertyMaps()没有除了&#39; Else&#39;之外的任何属性的属性映射。在单元测试中的ForMember扩展中定义。
我尝试过使用ForAllMembers来欺骗&#39;该属性映射为添加缺少的属性,但这些属性映射没有_sourceValueResolvers。
关于如何解决的建议?
答案 0 :(得分:0)
DataReaderMapper.CreateBuilder中发出的IL总是创建一个新对象,而不是在ResolutionContext中使用DestinationValue。
拉取AutoMapper的请求
simple, stateful approach to hiding/showing a UIView
that has Auto Layout constraints