Automapper 数据表到列表
Posted
技术标签:
【中文标题】Automapper 数据表到列表【英文标题】:Automapper Datatable to List 【发布时间】:2016-08-14 18:49:38 【问题描述】:我想使用自动映射器将我的数据表映射到列表。我尝试使用下面的代码,但它不起作用,我遇到了错误。
var data = GetDataTableResult();
var result = Mapper.Map<IDataReader, IList<RollCall>(data.CreateDataReader());
public class RollCall
public long Id get; set;
public string CreationUserId get; set;
public DateTime CreationTs get; set;
public string LastChangeUserId get; set;
public DateTime LastChangeTs get; set;
public byte StatusType get; set;
public DateTime EntryTs get; set;
public int ClientId get; set;
public int RollcallId get; set;
public int VehicleId get; set;
public double Quantity get; set;
public double OpeningOdo get; set;
public double ClosingOdo get; set;
public int OrderId get; set;
缺少类型映射配置或不支持的映射。
映射类型:
IDataReader -> IList1
System.Data.IDataReader -> System.Collections.Generic.IList
1[[SampleDemo.RollCall, SampleDemo, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]
目的地路径:
列表`1
源值:
System.Data.DataTableReader
【问题讨论】:
【参考方案1】:首先Reset mapper和Creat Map,然后做mapper,把IList改为List:
AutoMapper.Mapper.Reset();
AutoMapper.Mapper.CreateMap<IDataReader, RollCall>();
result = AutoMapper.Mapper.Map<IDataReader, List<RollCall>>(data.CreateDataReader());
【讨论】:
以上是关于Automapper 数据表到列表的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 AutoMapper 使用 EntityFramework 使用嵌套列表更新对象?
使用 Automapper 将一个类实例映射到另一个类的列表