问题标签 [edmx-designer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
83 浏览

asp.net - 实体框架交换导航属性

我正在使用带有 DB 优先方法的 EF。我在更新 EDMX 文件时遇到问题。假设我有一个表 InvoiceT 和另一个表 LookupT。现在,在 InvoiceT 中,我有一列 InvoiceType 与 LookupT 具有 FK 关系。现在实体在 InvoiceT 类中创建了一个名为 LookupT 的导航属性。到目前为止,它很好。

现在我用 LookupT 添加了另一个名为 InvoiceStatus 和 FK 的列。现在实体创建另一个名为 LookupT1 的导航属性。但是这里的问题是第一个导航属性 LookupT 没有指向它的原始数据,即 InvoiceType。相反,它现在指向 InvoiceStatus 数据。任何人都可以向我解释为什么它会这样,我该怎么办?

0 投票
1 回答
62 浏览

entity-framework-6 - 实体框架多对多关系关联不会自动生成

我看过这篇文章,我的问题恰恰相反,EF将实体视为两个独立的一对多关系,所以User有很多UserInRoleRole也有很多UserInRole实体,EF不应该自动隐藏UserInRole表格并给出一个和的导航属性Roles。我想要的实际上是这样的:UserUsersRole

模型

0 投票
0 回答
61 浏览

entity-framework - 如何从 Visual Studio 2015 中的 EDMX 向导清理旧连接

使用 EF Database-First 向导创建 EDMX 时,会出现一个下拉列表,其中包含先前创建的连接;在数据库不再相关之后,这些可能会持续很长时间。无法从向导界面编辑或删除连接,只能创建新连接。

请参阅屏幕截图,在“您的应用程序应使用什么数据连接来连接数据库?”

下拉数据存储在哪里,因为我非常想清理它们/将它们炸掉/永远核对它们/从新的石板开始? edmx 向导

我使用的是 Visual Studio 2015,但其他版本可能相同。

0 投票
0 回答
53 浏览

entity-framework - 有没有办法自动对我的整个 EDMX 设计器进行排序?

我在实体框架中有大量表,当我打开 EDMX 设计器时,我想要某种排序方法。有没有一种方法不需要我拖放每个表?

0 投票
3 回答
377 浏览

c# - 尝试在 C# 中执行存储过程参数实体框架 EDMX 模型时出错

我正在尝试执行我的存储过程,它需要 13 个参数,有些可以接受空值,有些总是需要的。我收到 2 个接受 null 的日期参数的错误。

我收到以下错误

System.Data.SqlClient.SqlException
参数化查询“(@recordType nvarchar(12),@lotCreation bit,@licensePlateCreation”需要参数“@lotManufactureDate”,但未提供该参数。

这是当我从 SQL Server 数据库调用存储过程时 edmx 模型创建的存储过程代码,这里licensePlateLookupCode从存储过程命名的参数允许空值,但在 emdx 模型创建的代码中它不显示它可以采用空值- 你知道为什么吗?

它应该像Nullable<string> licensePlateLookupCode而不像现在这样string licensePlateLookupCode

这是我调用该存储过程的地方,然后在用户单击提交按钮后执行它,我收到了 lotmanufacturer 和 lotexpiration 日期参数的错误,因为我认为它们是 NULLS,但在实际的数据库存储过程中它可以取空值或不

这是实际的存储过程-您可以看到@lotManufactureDate并且@lotExpirationDate确实允许空值:

所以,我不明白为什么当我为那些具有空日期的 2 个日期参数传递时,我会收到预期的错误,如果我传递 null 时,如果 lotlookupcode 参数会发生同样的事情,我会得到与期待 lotlookupcode 相同的错误。你能看出这里可能是什么问题吗?

我对我的代码进行了新的更改,现在我没有像以前的请求描述那样得到错误,但是现在当我调用存储过程来执行时,我在数据库上看不到任何内容,可以根据参数在下面查看我提供的基于 emdx 模型是否正确?

我从模型浏览器导入函数存储过程中调用此函数,当我按下提交按钮时,我没有在数据库上收到任何内容,基于上面的 emdx 模型和存储过程,参数看起来是否正确?

}

0 投票
0 回答
185 浏览

asp.net-mvc - 表未显示在实体框架图中 (edmx)

我首先使用 NET 4.5 和 Entity Framework 数据库构建了一个 ASP.NET MVC 应用程序。我正在使用 Visual Studio 2013。

现在我正在尝试从数据库更新 edmx。基本上我正在尝试向 edmx 图表添加一个表格,所以我按照以下步骤操作:

  1. 从 Visual Studio 打开 edmx 图

  2. 选择从数据库更新图表的选项

  3. 导航到“添加”选项卡以添加表格,但表格未显示在那里.....此外,文件夹中不存在自动生成的 cs 文件。

    所以我去更新选项卡,我可以看到那里显示了表格,但是图表中没有显示表格。

所以我决定使用编辑器打开 edmx 文件并删除该表的所有条目(似乎有人过去删除了该表,但 edxm 中的条目没有被删除,它们仍然存在)。无论如何,之后我按照以下步骤操作:

  1. 再次打开edmx图
  2. 从数据库中选择选项更新并转到添加选项卡。现在表格显示在那里。
  3. 选择我感兴趣的表
  4. 按下按钮完成以继续更新 edmx 图。

现在我在 edmx 图中查找表格,但表格不存在,它没有被添加......并且文件夹中不存在自动生成的 cs 文件。

那么如何将表格添加到 edmx 图表中呢?

0 投票
0 回答
86 浏览

entity-framework - 无法将联结表(由于多对多关系)添加到实体数据模型设计器 (edmx)

我在实体框架中有一个数据库模型。edmx 有一些表,现在我正在尝试添加两个新表(它们是连接表)。我曾经看到有人在过去添加了这两个表,但由于某种原因,这些表没有显示在图表中。它们未列在实体类型列表中(在图节点下),但我确实在实体商店中看到了它。

我做了以下事情:

  1. 编辑 edmx 文件并删除与这两个表有关的所有条目。然后从 edmx 设计器中,我通过“从数据库更新模型...”选项添加了这 2 个联结表。这 2 个联结表显示在那里并且可以添加。表格继续而不显示在图表中。
  2. 选择并删除 edmx 图表中的所有表,然后将它们再次添加到 edmx。再一次,表格继续,而不显示在图表中。

这 2 个表有它们的主键和指向 edmx 图中已经显示的其他表的外键。由于 2 个表之间存在多对多关系,这 2 个表也是联结表。

此外,我已经重新启动了 Visual Studio,清理了所有解决方案并再次重建,但没有成功。

知道我能做些什么来添加这两个表吗?

更新#1:磁盘中也没有创建类。

其中一张表的 SQL Server 定义如下(另一张表类似):

更新#2:正如 Gert Arnold 解释的那样,联结表(中间表)在多对多关系(我的情况)中被设计隐藏。在这篇文章中也证实了这一点。我不知道连接表被设计隐藏了......

0 投票
1 回答
38 浏览

visual-studio-2013 - 使用 PDFCreator 从 edmx 设计器中导出 edmx 图

我正在尝试使用PDFCreator将 edmx 图从 Visual Studio 2013 中的 edmx 设计器导出到 png 图像。我遇到的问题是 PDFCreator 切断了一些表格。在 PDFCreator 中,我选择 ARCH E3 作为纸张大小。此外,它使用白色作为背景导出为 png 图像,因此基数不能很好地观察到。下面是截图。

在此处输入图像描述

那么如何:

  1. 在不切断表格的情况下将所有 edmx 图适合 png
  2. 使用 PDFCreator 将 png 背景颜色更改为自定义颜色,以便正确观察基数。
0 投票
0 回答
26 浏览

c# - EDMX 画布并从模型问题生成数据库

我从模型中生成了数据库,现在我注意到所有表都附加了一个“s”,然后将 Userid 对象转换为 SQL 中的 Userids。

当我运行代码时

给我这个错误: System.InvalidOperationException: '实体类型 Userid 不是当前上下文模型的一部分。'

所有表格末尾添加的“s”是否正确?

在此处输入图像描述

这是我得到的实际错误

0 投票
0 回答
2595 浏览

c# - Visual Studio 2019 EDMX 缺少 ADO.NET 实体数据模型项模板

新手警告!

我已经看到了很多关于这个问题的问题,并且修复程序适用于不适合我的早期版本。无论我尝试遵循什么过程、教程或任何东西,我都会一直碰壁。

我学到了很多关于框架、核心和标准之间的区别。我发现 ADO.NET 实体数据模型包含在一个框架项目中。我看过很多教程,它们指导观众完成从 NuGet 添加 EntityFrameworkCore 包的过程,并承诺将 ADO.NET 实体数据模型添加到核心标准项目。但是在添加 EntityFrameworkCore 包之后,我的核心和标准项目中仍然缺少 ADO.NET 实体数据模型。在所有教程中,该过程的下一步是通过实体数据模型向导连接到数据库(如下图第五张图所示)。

我创建了一个包含核心类库、标准类库和框架类库的解决方案,因此我可以测试它们。这是我的解决方案:

在此处输入图像描述

您可以看到我在核心和标准类库项目中都添加了 EntityFrameworkCore 包。在框架类库项目中,当我选择添加新项时,会列出 ADO.NET 实体数据模型。

框架添加新项目

在核心和标准类库项目中,当我选择添加新项时,ADO.NET 实体数据模型不存在。

核心添加新项目

标准添加新项目

实体数据模型向导

所以,我的问题是:是否可以在核心或标准(非框架)项目中的 Visual Studio 2019 中创建 ORM 数据类和 EDMX 图?如果是,请指出我正确的方向。先感谢您。