我使用AutoMapper映射一个DataTable添加到列表中。
在我的情况下,对于数据表中的列可能会改变取决于外部变量。
我可以成功地将数据表映射到对象W /如下:
AutoMapper.Mapper.CreateMap<IDataReader, Person>();
DataTableReader dtr = myDataTable.CreateDataReader();
List<Person> people = new List<Person>();
people = AutoMapper.Mapper.Map<List<Person>>(dtr);
这一切工作正常。 但也有一些属性,我需要转换为整数,对可能或不可能存在于表中的列。
例:
AutoMapper.Mapper.CreateMap<IDataReader, Person>()
.FromMember(dest => dest.NumberOfOrders, opt => opt.MapFrom(src => Convert.ToInt32(src["HowManyOrders"])));
列“HowManyOrders”可能并不总是存在于表,让我怎么去,如果列中存在检查,然后转换值,如果它呢?