【问题标题】:Entity Framework - Error 11007: Entity type is not mapped.实体框架 - 错误 11007:实体类型未映射。
【发布时间】:2020-12-15 14:37:37
【问题描述】:

我在获得最新的 .edmx 时遇到了问题。

我收到一条消息说 错误 11007:实体类型“pl_Micro”未映射。 查看设计器视图,我确实看到该表确实存在。

我怎样才能克服这个消息?

【问题讨论】:

  • 只需双击错误。它将选择实体并点击删除。再次更新模型,看看实体是否是模型的一部分
  • Willem 的建议对我有用。

标签: entity-framework


【解决方案1】:

来自 MSDN:

错误 11007:实体类型未映射

当概念模型中的实体类型未映射到数据源时,会发生此错误。要解决此错误,请将实体类型映射到数据源。看MSDN链接

How to: Map Entities to Database Tables

【讨论】:

  • 对我来说更快的方法是删除表并重新添加它们。自动映射它们。 :)
  • 如果您从模型浏览器存储中删除表而不是实体类型,则会出现该错误
  • 我在“映射实体”文章中的第 3 步遇到问题,因为下拉列表中没有可供选择的表。要解决这个问题,请在模型浏览器中右键单击 .edmx,然后选择“从数据库更新模型”。选择要映射到的表。它们将被添加到模型中,您可能不希望这样做(在我的情况下名称错误),但是您可以映射预先存在的,然后在需要时删除新的。
【解决方案2】:

当我将数据库表移动到不同的架构或删除数据库表时,我收到此错误。在这种情况下,当您从数据库更新模型时,Entity Framework 似乎没有正确更新 edmx 文件...

我解决此问题的方法是对违规实体的名称进行文本搜索。然后我删除了 edmx 文件的 xml 视图中对此的所有引用,删除了定义实体的相应 cs 文件,以及项目中的任何其他引用。

【讨论】:

    【解决方案3】:

    此错误是由 SQL Server 身份验证服务器传递给我的,它没有必要的权限并且看不到实体。

    确认您的 sql 用户在数据库中具有必要的权限。

    【讨论】:

      【解决方案4】:

      当您通过 edmx 中的图表导入表格然后您将 app.config 指向不同的数据库实例时也会发生这种情况(例如从 dev db 切换到 test db)

      【讨论】:

        【解决方案5】:

        我收到此错误是因为我复制粘贴了一个实体并对其进行了修改。重新启动视觉工作室解决了这个问题。

        【讨论】:

          【解决方案6】:

          正确,关闭visual study,用notepad++,sublime text,notepad等输入*.edmx文件,查表,查列并修改列大小(MaxLength),在所有匹配中,在我的情况是 2,但他们可以更多。启动 Visual Studio,更改已被接受。

          【讨论】:

            【解决方案7】:

            我收到此错误是因为我必须更新表格列类型。 在 SQL Server 中刷新表并在实体框架中重新添加表以解决此问题。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2011-08-28
              • 2018-02-16
              • 1970-01-01
              • 1970-01-01
              • 2014-12-18
              • 2017-08-15
              • 2010-10-09
              相关资源
              最近更新 更多