欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

如何理解EFCore事務(wù)提交

本篇內(nèi)容主要講解“如何理解EF Core事務(wù)提交”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“如何理解EF Core事務(wù)提交”吧!

創(chuàng)新互聯(lián)建站是網(wǎng)站建設(shè)技術(shù)企業(yè),為成都企業(yè)提供專業(yè)的成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè),網(wǎng)站設(shè)計(jì),網(wǎng)站制作,網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制適合企業(yè)的網(wǎng)站。十多年品質(zhì),值得信賴!

控制事務(wù)

可以使用 DbContext.Database API 開始、提交和回滾事務(wù)。 以下示例顯示了在單個事務(wù)中執(zhí)行的兩個 SaveChanges 操作以及一個  LINQ 查詢:

using var context = new BloggingContext(); using var transaction = context.Database.BeginTransaction();  try {     context.Blogs.Add(new Blog { Url = "http://blogs.msdn.com/dotnet" });     context.SaveChanges();      context.Blogs.Add(new Blog { Url = "http://blogs.msdn.com/visualstudio" });     context.SaveChanges();      var blogs = context.Blogs         .OrderBy(b => b.Url)         .ToList();      // Commit transaction if all commands succeed, transaction will auto-rollback     // when disposed if either commands fails     transaction.Commit(); } catch (Exception) {     // TODO: Handle failure }

雖然所有關(guān)系數(shù)據(jù)庫提供程序都支持事務(wù),但在調(diào)用事務(wù) API 時,可能會引發(fā)其他提供程序類型或不執(zhí)行任何操作。

使用 System.Transactions

如果需要跨較大作用域進(jìn)行協(xié)調(diào),則可以使用環(huán)境事務(wù)。

using (var scope = new TransactionScope(     TransactionScopeOption.Required,     new TransactionOptions { IsolationLevel = IsolationLevel.ReadCommitted })) {     using var connection = new SqlConnection(connectionString);     connection.Open();      try     {         // Run raw ADO.NET command in the transaction         var command = connection.CreateCommand();         command.CommandText = "DELETE FROM dbo.Blogs";         command.ExecuteNonQuery();          // Run an EF Core command in the transaction         var options = new DbContextOptionsBuilder<BloggingContext>()             .UseSqlServer(connection)             .Options;          using (var context = new BloggingContext(options))         {             context.Blogs.Add(new Blog { Url = "http://blogs.msdn.com/dotnet" });             context.SaveChanges();         }          // Commit transaction if all commands succeed, transaction will auto-rollback         // when disposed if either commands fails         scope.Complete();     }     catch (Exception)     {         // TODO: Handle failure     } }

還可以在顯式事務(wù)中登記。

using (var transaction = new CommittableTransaction(     new TransactionOptions { IsolationLevel = IsolationLevel.ReadCommitted })) {     var connection = new SqlConnection(connectionString);      try     {         var options = new DbContextOptionsBuilder<BloggingContext>()             .UseSqlServer(connection)             .Options;          using (var context = new BloggingContext(options))         {             context.Database.OpenConnection();             context.Database.EnlistTransaction(transaction);              // Run raw ADO.NET command in the transaction             var command = connection.CreateCommand();             command.CommandText = "DELETE FROM dbo.Blogs";             command.ExecuteNonQuery();              // Run an EF Core command in the transaction             context.Blogs.Add(new Blog { Url = "http://blogs.msdn.com/dotnet" });             context.SaveChanges();             context.Database.CloseConnection();         }          // Commit transaction if all commands succeed, transaction will auto-rollback         // when disposed if either commands fails         transaction.Commit();     }     catch (Exception)     {         // TODO: Handle failure     } }

System.Transactions 的限制

  1. EF Core 依賴數(shù)據(jù)庫提供程序以實(shí)現(xiàn)對 System.Transactions 的支持。 如果提供程序未實(shí)現(xiàn)對 System.Transactions  的支持,則可能會完全忽略對這些 API 的調(diào)用。 SqlClient 支持它。

  2. 自 .NET Core 2.1 起,System.Transactions 實(shí)現(xiàn)不包括對分布式事務(wù)的支持,因此不能使用 TransactionScope  或 CommittableTransaction 來跨多個資源管理器協(xié)調(diào)事務(wù)。

到此,相信大家對“如何理解EF Core事務(wù)提交”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

分享題目:如何理解EFCore事務(wù)提交
URL地址:http://aaarwkj.com/article22/peshjc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)企業(yè)建站、用戶體驗(yàn)、App開發(fā)、搜索引擎優(yōu)化、網(wǎng)站營銷

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
欧美一级特黄大片做受另类| 精品欧美一区二区在线| 欧美日韩国产另类久久| 97乱碰视频在线观看| 日本不卡一区二区视频| 久久人人97超碰人人爱一久久精品| 免费精品99久久久国产| 国产精品黑丝美女91| 丝袜美腿精尽福利视频网址大全 | 99久久久久国产精品免费| 亚洲精品??一区二区| 日韩高清av一区二区| 最新中文字幕成人在线观看| 高潮内射一区二区三区| 麻豆国产97在线精品一区| 一级黄片电影中文字幕| 国产传媒在线观看网站| 日本成人午夜电影网站| 日本av一区二区在线| 亚洲国产精品一区二区av| 欧美在线观看日韩精品 | 欧美一区二区三区东京热| 日本道视频一区二区三区| 日本色电影一区二区三区| 国产精品亚洲国产精品| 国产福利三级在线观看| 日本精品不卡一二三区| 久久热在线观看免费高清| 日韩精品女性三级视频| 国产精品视频一区二区噜| 免费黄色一区二区三区| 麻豆文化传媒免费网址| 亚洲一区二区婷婷久久| 日韩欧美国产精品福利| 最新国产激情福利网站| 欧美 国产 综合 日韩| 久久精品国产亚洲av高清不卡| 国产三级系列在线观看| 日韩三级一区二区三区| 欧美日韩另类国产综合| 中文字幕一区二区三区精彩视频|