我只是尝试ASP.Net Entity框架,这是我第一次尝试使用ORM框架所以请耐心等待我如果我正在咆哮错误的树 .
为了简化问题,我得到了以下2个表格
日历
CalendarID UserID日期EventName
用户
UserId用户名
我已将它们添加到我的Entity Framework模型中,并 Build 了表之间的链接 . 然后,我可以通过使用类似的东西从我的MVC视图中显示日历列表
- <%= calendarEntry.DateAdded%>
但是,如果我然后尝试使用
-
<%= calendarEntry.Users.Username%>:<%= calendarEntry.DataAdded%>
它依赖于对calendarEntry.Users的调用,因为它表示它为null . 为什么实体框架没有通过使用细节?我是否需要在模型设计师中更改某些内容?
如果它有助于MVC控制器中将数据发送到视图的代码是这样的
var Entities = new UnityGamersEntities(); return View(Entities.Calendar);
真的希望有道理 .
3 回答
对于任何感兴趣的人我使用以下代码解决了这个问题
似乎真的缺乏实体框架的教程,除非你只想使用单个表我发现很难找到我需要的信息 .
希望这将在未来几个月内改变 .
GAV,
还有另一种方法可以让Linq to Entities填充用户表 .
每个外键和集合都有一个“加载”方法,它将进入数据库,在您的情况下,获取链接到当前日历的用户列表并填充集合 . 这有点像延迟加载 .
如果您要添加此行,它应该工作:
希望能帮助到你 .
PS - 我听说你缺乏文件
狡猾
您需要告诉实体框架加载日历的用户 .
您可以通过LINQ查询执行此操作,只需:
这说,加载日历及其所有用户 .
编辑:可能有其他方式加载用户,这只是LINQ方式 .