【问题标题】:Entity Framework Database First, how are associations generated?实体框架数据库首先,关联是如何生成的?
【发布时间】:2014-08-14 22:52:39
【问题描述】:

我首先使用的是 Entity Framework 6 数据库。我已经修改了 T4 文件,根据类似于this solution 的外键约束为我的导航属性赋予有意义的名称。然而,这似乎搞砸了我的 .edmx 中模型中的关联。每次从数据库更新模型时,我都必须更改导航属性以匹配实体类中实际生成的内容。

我的问题是,模型关联是如何生成的?他们是从某个地方的 T4 来的吗?还是直接来自数据库约束?

【问题讨论】:

    标签: c# .net entity-framework entity-framework-6


    【解决方案1】:

    您应该首先为 SQL 中的约束选择有意义的名称。

    一旦你有了这些,你可以在你的 .edmx 上使用模型浏览器并选择你希望如何命名关联的每一端,然后重新生成你的代码。

    此信息位于 .edmx 中,您应该在此处修改它。 T4 使用 .edmx 生成代码,因此如果您更改 T4 中关联的命名方式,EF 在尝试将代码转换回 SQL 时将无法识别它们。

    【讨论】:

    • 好的,如果我理解正确的话。我应该能够删除对 T4 的任何自定义更改,从数据库更新我的模型,然后从 .edmx 中的关联中命名导航属性?我会试一试,谢谢。
    • 是的,做到了!也许这是对 EF6 的更改,不再需要 T4 编辑?
    • 理论上你永远不需要碰T4。对于此类更改和大多数其他更改,您应该只更改模型浏览器/EDMX 中的内容。
    猜你喜欢
    • 1970-01-01
    • 2019-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多