【问题标题】:Data First EF, System Table clashes with System NamespaceData First EF,系统表与系统命名空间冲突
【发布时间】:2018-12-09 01:52:24
【问题描述】:

我正在开发一个 .NET 项目,并且正在将数据优先链接与数据库相结合。不幸的是,数据库有一个名为“System”的强制表,并且模型中生成的类与 System 命名空间发生冲突,从而覆盖了它。我曾尝试注释掉该类和对它的所有引用,但随后 Context 会引发缺少关系错误。有关解决此冲突的任何想法?

我是数据优先 EF 的新手,所以我确信一定有一些我不熟悉的解决方法。也许重命名类及其在类中的所有引用,但将其映射到上下文/edmx 中的正确表?我不知道该怎么做。我正在使用 EF 6.2。

【问题讨论】:

  • 您可以在创建数据库时检查 Pluralize table names 选项
  • 正确,我做到了。当表用作变量时,它被称为“Systems”,但类声明本身必须声明为“System”
  • There 是。
  • 您可以在 EDMX 设计器中更改名称。这将重命名该类并将其映射到System 表。

标签: c# asp.net database entity-framework


【解决方案1】:

您可以在 EDMX 设计器中更改名称。这将重命名该类并将其映射到 System 表。 ——格特·阿诺德

这是正确的答案。在 EDMX 中重命名后,Intellisense 并没有主动为我修复类名,因此我不得不花费 15 分钟更新类、它的引用以及它在 EDMX 文件本身中被引用的 20 次。

【讨论】:

    猜你喜欢
    • 2011-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-04
    • 1970-01-01
    • 1970-01-01
    • 2012-10-31
    相关资源
    最近更新 更多