【问题标题】:Entity Framework 4 omits some associations during model generationEntity Framework 4 在模型生成过程中省略了一些关联
【发布时间】:2010-05-18 20:18:54
【问题描述】:

从 SQL Server 数据库创建 EF4 模型后,我注意到我的用户表的所有关系都没有作为关联导入到模型中。所有其他关系均已正常导入。

My Users 表有一个 PK userId,它是一个 char(7) 字段,它作为 FK 集成到数据库中的其他几个表中,但由于某种原因,EF4 在模型生成过程中不会将这些关系作为关联导入。 ..

有人知道为什么会发生这种情况吗?

【问题讨论】:

    标签: .net entity-framework-4


    【解决方案1】:

    在我将 UserId 字段类型更改为 int 后,关系已正确导入。似乎 EF4 无法导入基于字符的关系。

    尽管这只是一种解决方法,但我会将其标记为答案。如果有人出现并提供正确答案,我会很乐意改变这个......

    【讨论】:

      【解决方案2】:

      我的第一反应是,您可能启用了“复数化或单数化生成的对象名称”复选框。这是一个新的复选框选项,因此如果您习惯于使用旧版本的 Entity Framework 生成实体,那么您可能没有意识到在 EF 4 中默认情况下这是启用的。如果您不期望这种行为,它将破坏您的构建。

      【讨论】:

      • 刚刚删除了现有模型并从头开始生成一个新模型,未选中“复数或单数化生成的对象名称”复选框,但仍未创建关联...
      • 好的,很高兴知道。我的另一个建议是用户表可能涉及与表的多对多关系。在这种情况下,中间表可能不会显示在关联中。您是否一直使用 EF4 和此数据模型,还是新版本可能会导致问题?
      • Users 表涉及多对多关系,但在删除该关系并创建新模型后,仍然没有生成关联...此模型始终使用 EF4。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多