主頁 > 知識庫 > 關于多對多關系表無法更新與插入的問題

關于多對多關系表無法更新與插入的問題

熱門標簽:旅游地圖標注線路 地圖標注位置怎么弄圖 電銷專用外呼線路 電話機器人鑰匙扣 400電話唐山辦理 漯河外呼調(diào)研線路 威力最大的電銷機器人 電銷外呼系統(tǒng)是違法的嗎 廣西房產(chǎn)智能外呼系統(tǒng)推薦

在EF里,我們設計模型時,會設計到多對多關系,在EF里會把這種關系會轉(zhuǎn)成兩個一對多的關系表,這是比較友好的,因為多對多來說,對于業(yè)務本身沒什么意思,所以隱藏了,沒什么壞處,但對于這個隱藏來說,對開發(fā)人員來講你就無法主動控制這張關系表了,而需要使用EF的update來更新主表的同時去更新關系表,這對于初學者會出現(xiàn)一些問題,今天說的就是多對多關系無法更新和插入的問題.

數(shù)據(jù)結構

public partial class WebManageRoles : Lind.DDD.Domain.Entity
{
public WebManageRoles()
{
this.WebManageMenus = new ListWebManageMenus>();
this.WebManageUsers = new ListWebManageUsers>();
}
[DisplayName("名稱"), Required]
public string RoleName { get; set; }
[DisplayName("關于")]
public string About { get; set; }
[DisplayName("排序"), Required]
public int SortNumber { get; set; }
[DisplayName("最后操作人")]
public string Operator { get; set; }
[DisplayName("權限"), Required]
public int OperatorAuthority { get; set; }
[DisplayName("部門"), Required]
public int DepartmentID { get; set; }
public virtual WebDepartments WebDepartments { get; set; }
public virtual ICollectionWebManageMenus> WebManageMenus { get; set; }
public virtual ICollectionWebManageUsers> WebManageUsers { get; set; }
}

關于AutoDetectChangesEnabled

參考:https://msdn.microsoft.com/en-us/data/jj556205.aspx

大叔的解釋,當AutoDetectChangesEnabled為true時,可以加載依賴的關系,在插入和更新時會有同步完成(多對多,一對多關系時使用),當值為false時,只更新(插入)主表的數(shù)據(jù)

問題解決

old.WebManageMenus = menuRepository.GetModel(i => menu.Contains(i.Id)).ToList();
old.DepartmentID = dept;
old.RoleName = entity.RoleName;
old.SortNumber = entity.SortNumber;
old.About = entity.About;
old.DataUpdateDateTime = DateTime.Now;
roleRepository.Update(old);

在數(shù)據(jù)上下文中的設置

public ManagerContext()
: base("DefaultConnection")
{
this.Configuration.AutoDetectChangesEnabled = true;//對多對多,一對多進行curd操作時需要為true
this.Configuration.LazyLoadingEnabled = false;
this.Configuration.ProxyCreationEnabled = false;//禁止動態(tài)攔截System.Data.Entity.DynamicProxies.
}

以上所述是小編給大家介紹的關于多對多關系表無法更新與插入的問題 ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

您可能感興趣的文章:
  • 數(shù)據(jù)庫修改多對多的中間表的記錄的技巧

標簽:無錫 銅陵 綏化 試駕邀約 湘西 湖北 焦作 欽州

巨人網(wǎng)絡通訊聲明:本文標題《關于多對多關系表無法更新與插入的問題》,本文關鍵詞  關于,多對,多,關系,表,無法,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《關于多對多關系表無法更新與插入的問題》相關的同類信息!
  • 本頁收集關于關于多對多關系表無法更新與插入的問題的相關信息資訊供網(wǎng)民參考!
  • 企业400电话

    智能AI客服机器人
    15000

    在线订购

    合计11份范本:公司章程+合伙协议+出资协议+合作协议+股权转让协议+增资扩股协议+股权激励+股东会决议+董事会决议

    推薦文章