这在我的控制器中:
public ActionResult Index()
{
var groupJoin = from d in db.tblParent1
join e in db.tblParent2 on d.parent1ID equals e.parent1ID
select new
{
parent1ID = d.parent1ID,
parent1Name = d.parent1Name,
parent2ID = e.parent2ID,
parent2Name = e.parent2Name,
};
ViewBag.groupJoin = groupJoin.ToList();
return View();
}
这是我的观点:
@foreach (var item in ViewBag.groupJoin)
{
<tr>
<td>
@item.parent1Name
</td>
<td>
@item.parent2Name
</td>
</tr>
}
我收到此错误:
对象不包含
的定义parent1Name
将@item.parent1Name
替换为@item
时。它在网络上显示整个行
{ parent1ID = 1, parent1Name = master , parent2ID = 2, parent2Name = child }
如何指定列?
答案 0 :(得分:3)
定义这样的类
public class Result
{
public int parent1ID { get; set; }
public string parent1Name { get; set; }
public int parent2ID { get; set; }
public string parent2Name { get; set; }
}
然后执行以下操作
var groupJoin = from d in db.tblParent1
join e in db.tblParent2 on d.parent1ID
equals e.parent1ID
select new Result
{
parent1ID = d.parent1ID,
parent1Name = d.parent1Name,
parent2ID = e.parent2ID,
parent2Name = e.parent2Name,
};