映射使用自动映射器

本文关键字:映射 | 更新日期: 2023-09-27 18:32:08

如何使用AutoMapper将匿名列表映射到T列表?

例如:

class Test{
  public string a1{get;set]}
  public string a2{get;set;}
}
//....Entity Framework 4.3.1
var t=from z in db select {z.a1,z.a2};
var tmp=AutoMapper.Mapper.DynamicMap<List<Test>>(t);

但是 tmp 总是空的

如何解决?

映射使用自动映射器

您需要先调用 t.ToList() 来执行查询

var tmp=AutoMapper.Mapper.DynamicMap<List<Test>>(t.ToList());

你怎么改变

var t=from z in db select new Test
                          {
                             a1 = z.a1,
                             a2 = z.a2
                           }

编辑要允许映射到动态类型,可以参考现有的帖子