【发布时间】:2009-05-12 05:53:19
【问题描述】:
我正在学习 ASP.NET MVC(以及一般的 MVC),我找到的所有在线帮助仅演示了使用单个表,而不是多个表之间的关系。我正在运行一个我期望也应该返回关联实体的查询,但它不是也无法弄清楚我缺少什么。感谢您的帮助!
我有以下数据:
Ticket
TicketID CompanyID Subject ...
-------- --------- -------
1 1 "stuff"
2 1 "things"
Company
CompanyID Name ...
--------- --------
1 "FredCo"
因此,每张票都与特定的公司相关联。我正在尝试为工单创建详细信息视图,并且我想显示公司名称。这是我目前设置的内容。
型号
一个Ticket实体和一个Company实体,它们之间有一个名为CompanyTicket的关联。导航属性是 Ticket.Company 和 Company.Tickets。
在关联的映射详细信息中,我有:
Maps to Ticket
Company.CompanyID <-> CompanyID
Ticket.TicketID <-> TicketID
控制器
我的 TicketController.Details 方法如下所示:
public ActionResult Details( int id )
{
var tickettoview = ( from m in _db.Ticket
where m.TicketID == id
select m ).First();
return View( tickettoview );
}
编辑:经过 Mark Hamilton 的建议后,我意识到问题出在我的查询上。在返回上设置断点表明 tickettoview 从未填充过 Customer。所以这缩小了范围,但我仍然不确定如何填充 Company 属性。
再次感谢您!
【问题讨论】:
-
是的,堆栈跟踪会很好。
标签: asp.net-mvc linq entity-framework linq-to-entities