【问题标题】:Disable Foreign Key Constraint Code First EF禁用外键约束代码优先 EF
【发布时间】:2014-03-28 18:17:07
【问题描述】:

如果我想禁用关系的外键约束。如果我在数据库中进行编辑,我会执行以下操作:

但我希望在我的迁移文件或我的配置或我的模型中的关系上禁用外键约束关于“代码优先”方法的注释形式。到目前为止,我什么也没想到,但我尝试了.WillCascadeOnDelete(false)。我还注意到 EF 不在乎我是否冒昧地从数据库中禁用外键约束,但在我看来这会违反代码优先方法。 因此,任何建议都受到高度赞赏。

【问题讨论】:

    标签: c# sql-server entity-framework ef-code-first foreign-keys


    【解决方案1】:

    我找到的一个解决方案是运行我自己的自定义迁移,例如:

    Sql("ALTER TABLE dbo.ProductItems NOCHECK CONSTRAINT [FK_dbo.ProductItems_dbo.Services_ProductItemTypeId]");

    不知道这是否是唯一的方法。仍然愿意接受建议。

    【讨论】:

    • 这对你真的有用吗?我试过了,当我尝试删除主表的主键时,约束仍然有效。我不得不先放弃FK。在我的情况下,FK 有级联删除,如果相关的话。
    猜你喜欢
    • 1970-01-01
    • 2013-07-29
    • 1970-01-01
    • 2018-02-13
    • 1970-01-01
    • 2021-01-05
    • 1970-01-01
    • 2018-05-31
    相关资源
    最近更新 更多