我正在尝试完成一个简单的任务,即使用2个具有1:*关系的表创建数据库。
在一张桌子(Foos)中,我有
Id
...
...
在其他(酒吧)我有
Id
FooId
...
...
...
我创建了一个从Bars到Foos的外键关系,其中Foriegn Key Table是指向FooId列的Bars,而主键表是指向Id列的Foos。
然后我创建了我的ADO.NET实体数据模型,它正确地选取了Foos和Bars表以及关系并创建了导航属性。
现在,在我的MVC应用程序中,我试着像这样得到一个Foo:
var foo = (from f in _db.Foos where f.Id == id select f).FirstOrDefault();
然后我尝试访问foo对象的Bars属性并且没有得到任何结果。 但是,如果我检查_db.Bars集,我会看到带有FooId的Bars设置为正确的id。
我应该怎么做才能解决为什么这种关系不起作用?我已经查看了MSDN中的许多教程和文档中的表关系,但没有什么是明显错误的。
我正在尝试在ASP.NET MVC应用程序中使用它,以防相关。
答案 0 :(得分:4)
在Foos桌上使用包含
var foo =(来自_db.Foos.Include(“Bars”)中的f,其中f.Id == id选择f).FirstOrDefault();