1
我是實體框架的新手。是否有可能直接從表中刪除一個實體,而不是去清除所有與其他表的多對多連接?如何刪除與其他表有多對多關係的實體?
var artist = _artistDetailsRep.SingleOrDefault(d => d.ArtistID == id);
_artistDetailsRep.Delete(artist);
_artistDetailsRep.SaveChanges();
此代碼抱怨是因爲藝術家與artistType有多對多的連接(約束)。所以有什麼作品是低於
artist.ArtistTypes.Clear();
_artistDetailsRep.Delete(artist);
_artistDetailsRep.SaveChanges();
我需要明確清除所有的藝術家類型,然後刪除藝術家。有沒有辦法自動做到這一點?基本上它應該刪除所有的連接本身,而不是我去說並刪除這些約束?
可能你可以建議更好的方法來應對這些情況嗎?
所以,這是默認情況下不啓用? –
@ J.W。不,我不希望。通常,當這未配置時,EF會拋出有關引用約束違例的異常。 –