ADO.Net Entity Framework : (十四) 關聯式資料 - 修改

延續上兩篇 ADO.Net Entity Framework : (十一) 關聯式資料 - 查詢 、 ADO.Net Entity Framework : (十三) 關聯式資料 - 新增 ,
這次來介紹關聯式資料修改的部分

延續上兩篇 ADO.Net Entity Framework : (十一) 關聯式資料 - 查詢ADO.Net Entity Framework : (十三) 關聯式資料 - 新增
這次來介紹關聯式資料修改的部分

 

一樣先來看一下 示範資料庫的 ER-Model

2009-10-12_122043

User 使用者
Group 群組
UserDepartment 使用者部門


需求是要修改 User的資料  包含 UserDepartment 以及 Group,
直接來看語法


        using (TestEntities te = new TestEntities())
        {
            ////取得 David 資料
            var u = te.User.Where(a => a.User_name == "David").First();
            u.Group.Load();
            u.UserDepartmentReference.Load();
            
            ////修改 Email
            u.User_email = "asdtey@yahoo.com.tw";           
            te.SaveChanges();
            

            //修改使用者部門

            ////先取得要變更成的部門
            var t = te.UserDepartment.Where(a => a.UserDepartment_name == "經理部").First();   
            ////重新給予部門
            u.UserDepartment = t;          
            te.SaveChanges();
            

            //修改群組

            ////因為 User 與 Group 為多對多的關係
            ////因此修改方式為 刪除與新增

            ////刪除群組
            var g = u.Group.First();            
            u.Group.Remove(g);

            ////取得要新增的群組
            var g1 = te.Group.Where(a => a.Group_name == "電研社").First();
            u.Group.Add(g1);
            
            te.SaveChanges(); 
        }

 

修改部分比較簡單,下次來介紹刪除的部分




 


 

  • 如果您覺得這篇文章有幫助,請您幫忙推薦一下或按上方的""給予支持,非常感激
  • 歡迎轉載,但請註明出處
  • 文章內容多是自己找資料學習到的心得,如有不詳盡或錯誤的地方,請多多指教,謝謝