C# 连接查询在C中不起作用的自动映射#

C# 连接查询在C中不起作用的自动映射#,c#,linq,automapper,C#,Linq,Automapper,我刚刚开始使用AutoMapper将数据库映射到模型。我有两个表,在它们之间应用了join。此外,我还创建了一个将这两个类结合在一起的类。现在我想把这个连接结果自动映射到变量 var demo = db.bookings.Join(db.users, u => u.userId, j => j.userId, (u, j) => new { booking = u, user = j }).ToList(); var Lists = demo.Select(i=> Map

我刚刚开始使用AutoMapper将数据库映射到模型。我有两个表,在它们之间应用了join。此外,我还创建了一个将这两个类结合在一起的类。现在我想把这个连接结果自动映射到变量

var demo = db.bookings.Join(db.users, u => u.userId, j => j.userId, (u, j) => new { booking = u, user = j }).ToList();
var Lists = demo.Select(i=> Mapper.Map<UserBookingModel>(demo)).ToList();
return View(Lists);
var demo=db.bookings.Join(db.users,u=>u.userId,j=>j.userId,(u,j)=>new{booking=u,user=j}).ToList();
var list=demo.Select(i=>Mapper.Map(demo)).ToList();
返回视图(列表);
我在列表变量中得到了2行,这与演示变量相同,但当我在列表变量中进行检查时,我得到了空值,如下图所示: 但是如果您看到demo变量,它会显示记录

假设“UserBookingModel”实际上是您的目标类而不是源类

将整个“demo”对象而不是每一行发送到映射器时出错

var demo = db.bookings.Join(db.users, u => u.userId, j => j.userId, (u, j) => new { 
booking = u, user = j }).ToList();
var Lists = demo.Select(i=> Mapper.Map<UserBookingModel>(i)).ToList();
return View(Lists);
var demo=db.bookings.Join(db.users,u=>u.userId,j=>j.userId,(u,j)=>new{
booking=u,user=j});
var list=demo.Select(i=>Mapper.Map(i)).ToList();
返回视图(列表);

发布映射配置。在您的
演示中。选择
可将整个演示集合发送到映射器,而不是当前项目<代码>映射(演示)
应该是
映射(i)
@BarryO'Kane-我没有设置任何附加映射配置。这是omu的默认值。要映射的属性是否一致命名?发布实体和视图模型代码将是有益的。@J.Steen的建议对我有用。我犯了一个愚蠢的错误…:(