【问题标题】:Entity Framework does not read FK Relationships, LINQ To SQL Does实体框架不读取 FK 关系,LINQ To SQL 可以
【发布时间】:2012-07-25 18:07:52
【问题描述】:

我正在尝试从数据库创建实体模型。当我添加表时,EF 不会读取我现有的 FK 约束。如果我在同一个项目中创建一个 Linq to SQL 文件并添加相同的表,它会毫无问题地读取约束。

怎么了?

【问题讨论】:

  • 你的外键约束是否使用主键?
  • 是的,我所有的键都在 SQL 中正确定义为键(EDM 读取这些键很好,甚至在它们上面放了小键图标)。虽然 EDM 不会读取键之间的 FK 约束。
  • 您是在添加表格还是视图? EF 不够聪明,无法通过视图使用键。它仅适用于表格。
  • 我只是添加表格,不涉及视图。
  • 您的模型中究竟缺少什么 - 只是 FK 或整个关系的属性?

标签: c# .net visual-studio-2010 entity-framework


【解决方案1】:

最近我遇到了同样的问题 - 我不知道为什么,但不知何故,实体框架与一些非聚集索引发生冲突。

类似情况:

http://blog.degree.no/2012/09/missing-relations-in-entityframework-model-when-generating-from-database/

您可以尝试删除索引、重新生成模型、再次添加索引并更新重新生成的模型 - 它对我有用。

【讨论】:

  • 感谢您的信息!不幸的是,我没有能力更改数据库设计,但这听起来像是基于我的索引设置方式的可能原因。也许我将来有机会对数据库设计进行更改并利用您的答案。
猜你喜欢
  • 2010-09-05
  • 1970-01-01
  • 2011-04-27
  • 2011-01-15
  • 2011-04-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多