Entity Framework 学习初级篇7--基本操作:增加、更新、删除、事务
生活随笔
收集整理的這篇文章主要介紹了
Entity Framework 学习初级篇7--基本操作:增加、更新、删除、事务
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本節,直接寫通過代碼來學習。這些基本操作都比較簡單,與這些基本操作相關的內容在之前的1至6節基本介紹完畢。l 增加:
方法1:使用AddToXXX(xxx)方法:實例代碼如下:using (var edm = new NorthwindEntities()){Customers c = new Customers { CustomerID = "c#", City = "成都市", Address = "中國四川省", CompanyName = "cnblogs", Country = "中國", Fax = "10086", Phone = "1008611", PostalCode = "610000", Region = "天府廣場", ContactName = "風車車.Net" };edm.AddToCustomers(c);int result = edm.SaveChanges();Assert.AreEqual(result, 1);Customers addc = edm.Customers.FirstOrDefault(cc => cc.CustomerID == "c#");Console.WriteLine("CustomerId={0},City={1}", addc.CustomerID, addc.City);}方法2:使用ObjectContext的AddObject(string entitySetName, object entity)方法。實例代碼如下:using (var edm = new NorthwindEntities()){Customers c = new Customers { CustomerID = "c2", City = "成都市2", Address = "中國四川省2", CompanyName = "cnblogs", Country = "中國", Fax = "10086", Phone = "1008611", PostalCode = "610000", Region = "天府廣場", ContactName = "風車車.Net" };edm.AddObject("Customers", c);int result = edm.SaveChanges();Assert.AreEqual(result, 1);Customers addc = edm.Customers.FirstOrDefault(cc => cc.CustomerID == "c2");Console.WriteLine("CustomerId={0},City={1}", addc.CustomerID, addc.City);}其中,在代碼中,需要注意的是:AddObject方法中參數“entitySetName ”就是指對應實體名稱,應該是:“Customers”,而不是“NorthwindEntities.Customers”;l 更新:
using (var edm = new NorthwindEntities()){Customers addc = edm.Customers.FirstOrDefault(cc => cc.CustomerID == "c2");addc.City = "CD";addc.ContactName = "cnblogs";addc.Country = "CN";int result = edm.SaveChanges();Assert.AreEqual(result, 1);Customers updatec = edm.Customers.FirstOrDefault(cc => cc.CustomerID == "c2");Console.WriteLine("CustomerId={0},City={1}", updatec.CustomerID, updatec.City);}其中,需要注意的是:不能去更新主鍵,否則會報“System.InvalidOperationException : 屬性“xxx”是對象的鍵信息的一部分,不能修改。”l 刪除:
實例代碼如下:using (var edm = new NorthwindEntities()){Customers deletec = edm.Customers.FirstOrDefault(cc => cc.CustomerID == "c2");edm.DeleteObject(deletec);int result = edm.SaveChanges();Assert.AreEqual(result, 1);Customers c = edm.Customers.FirstOrDefault(cc => cc.CustomerID == "c2");Assert.AreEqual(c, null);}l 事務:
實例代碼如下:NorthwindEntities edm = null;System.Data.Common.DbTransaction tran = null;try{edm = new NorthwindEntities();edm.Connection.Open();tran = edm.Connection.BeginTransaction();Customers cst = edm.Customers.FirstOrDefault(cc => cc.CustomerID == "c#");cst.Country = "CN";cst.City = "CD";edm.SaveChanges();tran.Commit();}catch (Exception ex){if (tran != null)tran.Rollback();throw ex;}finally{if (edm != null && edm.Connection.State != System.Data.ConnectionState.Closed)edm.Connection.Close();}至此,初級篇基本介紹完畢。后面,打算寫點,中級篇的東西。
轉載于:https://www.cnblogs.com/Akgu/p/5156325.html
總結
以上是生活随笔為你收集整理的Entity Framework 学习初级篇7--基本操作:增加、更新、删除、事务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BZOJ 3669: [Noi2014]
- 下一篇: AOP举例子