2009-09-23 46 views
1

我有一个使用ADO.NET EntityFramework的简单应用程序,使用两个表之间的多对多关系(使用映射表),让我们说书和作者。我确实在三个表之间正确地关联了外键,我可以为同一本书添加两个作者,并且数据在数据库中正确写入。在ADO.NET实体框架中重新编译后缺少多对多关联

但是,在重建应用程序/再次运行应用程序之后,即使关系仍然存在于数据库中,所有关联都会丢失(所有图书都没有作者)。我正在使用visual studio 2008内置的asp.net服务器。

有没有人有关于发生了什么的线索?

+0

我建议想出能重现问题,并张贴的(从公式尤其是去除ASP.NET)尽可能小的代码示例。如果这不会导致您找到解决方案,请将您的小样本添加到您的问题中。 – 2009-09-24 07:19:59

+0

查看EF设计器中关系的映射细节。将它们与有效的多对多关系进行比较。有什么不同吗? – 2009-09-24 13:23:57

回答

2

我猜你的问题是,当你阅读从数据库中的书你没有看到任何作者。

实体框架使用延迟加载,因此它不会加载相关项目,除非它们是使用“加载”或“包含”特定加载的。

http://msdn.microsoft.com/en-us/library/bb896249.aspx

+0

非常感谢,它的工作原理 – 2009-10-05 10:12:13