我将自定义SQL添加到EF6代码首次迁移。 SQL将删除触发器添加到各种表中。它生成了正确的语法并按预期获得输出。
但是输出的位置给我带来了麻烦。代码优先迁移将所有外键约束放在生成的SQL的底部。在为连接表创建约束(用于多对多关联)时,会添加ON DELETE CASCADE
子句。除非我在参与该关系的其中一个表中添加了删除触发器,否则所有罚款和花花公子都不允许 - 级联删除不允许来自带有删除触发器的表。
理想情况下,我想做两件事之一 - 将我的SQL移到脚本的底部(我可以在他们“添加”之后拉动级联删除约束)或以某种方式告诉EF不要级联删除某些特定的连接表,同时保留默认行为,以便更常见的情况是级联删除是正确的事情。
任何人都知道如何做到这一点?
感谢。