在ASP.Net MVC中使用LINQ Lambda连接三个表并将其放入ViewModel中的步骤如下:
public class CombinedDataViewModel
{
public string Property1 { get; set; }
public string Property2 { get; set; }
public string Property3 { get; set; }
}
var combinedData = dbContext.Table1
.Join(dbContext.Table2,
t1 => t1.Id,
t2 => t2.Table1Id,
(t1, t2) => new { Table1 = t1, Table2 = t2 })
.Join(dbContext.Table3,
t => t.Table2.Id,
t3 => t3.Table2Id,
(t, t3) => new CombinedDataViewModel
{
Property1 = t.Table1.Property1,
Property2 = t.Table2.Property2,
Property3 = t3.Property3
})
.ToList();
在上面的代码中,我们使用了Join方法将三个表连接在一起,并选择了需要的数据。通过匿名类型创建了一个新的对象,并将其转换为我们创建的ViewModel类型。
@model List<CombinedDataViewModel>
@foreach(var data in Model)
{
<p>@data.Property1</p>
<p>@data.Property2</p>
<p>@data.Property3</p>
}
这样就完成了在ASP.Net MVC中使用LINQ Lambda连接三个表并将其放入ViewModel中的过程。记得替换代码中的"Table1"、"Table2"和"Table3"为你实际使用的表名和属性名。另外,也可以根据实际需求调整LINQ查询的逻辑。
领取专属 10元无门槛券
手把手带您无忧上云