我们系统中有各种表,这些表的外键引用了同一表中的ID。这是通过实体框架通过我们的配置文件中的以下代码添加的:
this.HasRequired(e => e.Pay)
.WithMany()
.HasForeignKey(wcc => e.PayId)
.WillCascadeOnDelete(true);
请注意,有些是用HasOptional而不是HasRequired定义的。
是否可以删除这些外键?我尝试了以下方法:
this.HasRequired(e => e.Pay)
.WithMany();
但这在创建新迁移时不会生成任何代码,然后我尝试删除上面提供的全部代码,再次,在创建迁移时它未生成任何代码。
是否可以从特定表中删除现有外键?我仍然需要该字段,但我不希望它成为外键。
谢谢。