我正在寻找一段时间,我找不到任何解决方案,即使在这篇文章中也是如此:
asp.net mvc 3 - How do you load children AND grand-children of an entity?
基本上我有3个班级:
Offer.cs,Application.cs和Contractor.cs
1要约包含应用程序集
1个申请包含1个承包商。
基本上我想抓住查看承包商对象,它将变为空。 谢谢你的帮助!!!!
以下是代码:
查看
@foreach (var item in Model)
{
foreach (var candidate in item.Candidates)
{
Here is the problem #### canditate.Contractor == null ###
控制器
public ActionResult Index () {
return View (db.Offers.Include(c => c.Location).Include(c => c.Candidates).ToList ());
}
模型
public class Offer {
public Location Location { get; set }
public ICollection<Application> Candidates { get; set; }
}
public class Application {
public Contractor Contractor { get; set}
}
答案 0 :(得分:0)
你可以尝试
db.Offers.Include("Location.Candidates").ToList()
这应该为这些位置加载所有位置和所有相关候选者(虽然我不知道使用lambdas执行此操作的方法)。
答案 1 :(得分:0)
你可以使用......
return View(db.Offers
.Include(o => o.Location)
.Include(o => o.Candidates.Select(c => c.Contractor))
.ToList());
...在您的Index
操作中,以便将Contractor
个大孩子与Candidates
个孩子一起加载。