为什么 Entity Framework Database First override on delete no action

Why does Entity Framework Database First overrides on delete no action

我有一个用于 WinForms 应用程序的 Entity Framework 项目,我使用的方法是数据库优先。 这是我的设置(我尽可能简单): Sql Database Model Entity Framework Model

问题是当我尝试使用以下命令删除部门时:

context.Departamento.Remove(departamento)

它删除了 DepartamentoComputadora table 上的每条记录,而不是为数据库中的 "On Delete No Action" 约束抛出异常。

奇怪的是,如果我尝试删除数据库中的那个部门,由于限制,它实际上不允许我删除它。

我在 EF 上是否缺少任何强制执行删除时无操作的配置?

更奇怪的是,EF 的实际配置显示了我期望在 table 上具有的行为。

提前致谢!

实际上,Visual Studio 上 Git 的一些问题是我的错。当我提交分阶段更改时我的模型被破坏,然后即使我正在删除、卸载 EF、再次安装它并从头开始重新创建模型,一些文件没有从我的项目文件夹中删除,这导致了问题。

解决方案非常简单:

正在为修复创建一个分支。

正在删除实体数据模型。

卸载 EF 并删除 app.config 文件中引用 EF 的所有左行。

正在重新安装 EF。

正在重新创建模型并提交更改。

完成。

非常感谢!