C# 将AutoMapper与DataTable和DataRows一起使用时出错
我使用AutoMapper(10.1.1)和AutoMapper.Data(5.0.0)来动态映射数据行或数据表与DTO。 我按照以下说明配置了我的应用程序 我也看到了这一点 这是我的配置类C# 将AutoMapper与DataTable和DataRows一起使用时出错,c#,datatable,automapper,datarow,automapper-10,C#,Datatable,Automapper,Datarow,Automapper 10,我使用AutoMapper(10.1.1)和AutoMapper.Data(5.0.0)来动态映射数据行或数据表与DTO。 我按照以下说明配置了我的应用程序 我也看到了这一点 这是我的配置类 var mapper = new Mapper(cfg => { cfg.AddDataReaderMapping(); cfg.CreateMap<IDataRecord, MyModelDto>(); }); var映射器=新映射器(cfg=>{ AddDataReade
var mapper = new Mapper(cfg => {
cfg.AddDataReaderMapping();
cfg.CreateMap<IDataRecord, MyModelDto>();
});
var映射器=新映射器(cfg=>{
AddDataReaderMapping();
CreateMap();
});
我为IMapper注入了成功的服务:
public class ServiceClass
{
[Dependency]
public IMapper Mapper { get; set; }
public IEnumerable<MyModelDto> GetList()
{
IEnumerable<MyModelDto> res;
var conn = new SqlConnection("...");
SqlCommand cmd = new SqlCommand("SELECT * FROM MyTable", conn);
conn.Open();
using (SqlDataReader reader= cmd.ExecuteReader())
{
res = this.Mapper.Map<IDataReader, IEnumerable<MyModelDto>>(reader); // throws error
conn.Close();
}
return res;
}
}
公共类服务类
{
[依赖性]
公共IMapper映射程序{get;set;}
公共IEnumerable GetList()
{
可数名词;
var conn=新的SqlConnection(“…”);
SqlCommand cmd=newsqlcommand(“从MyTable中选择*”,conn);
conn.Open();
使用(SqlDataReader=cmd.ExecuteReader())
{
res=this.Mapper.Map(reader);//抛出错误
康涅狄格州关闭();
}
返回res;
}
}
调用Map()方法时,出现以下错误“对象引用未设置为对象的实例”
谢谢你的帮助