簡體   English   中英

在EntityFramework 4中刪除多對多關系

[英]Deleting from Many-to-Many relationships in EntityFramework 4

我試圖使用EntityFramework 4刪除一系列實體。這是我正在使用的代碼:

var role = (
    from r in context.tblAdminRoles
    where r.AdminRoleId == this.Role.AdminRoleId
    select r
).First();

this.AdminUser.tblAdminRoles.Remove(role);
context.SaveChanges();

context.tblAdminRoles.Remove(role);
context.SaveChanges();

但是,當我執行它時,我收到以下錯誤:

DELETE語句與REFERENCE約束"FK_tblAdminUserRole_tblAdminRole"沖突。 沖突發生在數據庫"MyMainSite2" ,表"dbo.tblAdminUserRole" ,列'AdminRoleId'

該語句已終止。

我的數據庫具有以下結構:

----------------      --------------------      ----------------
|              |      |                  |      |              |
| tblAdminUser | ---< | tblAdminUserRole | >--- | tblAdminRole |
|              |      |                  |      |              |
----------------      --------------------      ----------------

任何人都可以指出我可能出錯的正確方向嗎?

檢查級聯刪除數據庫中的兩個關系指的鏈接表啟用tblAdminUserRole ,尤其是對FK_tblAdminUserRole_tblAdminRoletblAdminRole表。 看起來它沒有啟用,因此刪除角色不會刪除鏈接表中最終導致FK約束違規的條目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM