偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

LINQ TO SQL分布式事務(wù)

開發(fā) 后端 分布式
這里介紹LINQ TO SQL分布式事務(wù),以及介紹LINQ TO SQL通過在submitchanges方法的時候指定ConflictMode來定義并發(fā)控制行為。

在向大家詳細介紹LINQ TO SQL分布式事務(wù)之前,首先讓大家了解下隱式事務(wù)和顯式事務(wù),然后全面介紹LINQ TO SQL分布式事務(wù)。

LINQ TO SQL,顧名思義,涉及到了數(shù)據(jù)庫操作。那么就會有一個事務(wù)的概念,例如,假設(shè)我們需要一次性插入兩個實體,但希望保證這兩個操作的完整性的話。

1. 隱式事務(wù)

其實,即便我們不寫代碼,LINQ TO SQL也會自動創(chuàng)建一個事務(wù)的。默認事務(wù)隔離級別為ReadCommitted

2. 顯式事務(wù)

我們也可以自己寫代碼,來明確地控制事務(wù),默認事務(wù)隔離級別為ReadCommitted

3. LINQ TO SQL分布式事務(wù)

我們也可以使用TransactionScope對象,來定義LINQ TO SQL分布式事務(wù)。

注意:TransactionScope的默認隔離級別為可串行化,可能帶來并發(fā)鎖沖突問題。

***大概要談一下并發(fā)控制的問題:這個問題的出現(xiàn)就在于,某些時候,某個客戶端讀取到了數(shù)據(jù),然后它斷開了,在本地修改;同時,另外一個客戶端也讀取到了數(shù)據(jù),并且修改并提交了。此時,***個客戶端如果再進行更新,就應(yīng)該是有所問題的。這就是所謂的并發(fā)問題。

LINQ TO SQL通過在submitchanges方法的時候指定ConflictMode來定義并發(fā)控制行為:
◆FailOnFirstConflict(默認的)
◆ContinueOnConflict

下面有一個例子,講解了并發(fā)沖突時繼續(xù)操作,并且對沖突項進行解決

  1. var query = from p in ctx.Products where p.CategoryID == 1 select p;  
  2. foreach (var p in query)  
  3. p.UnitsInStock = Convert.ToInt16(p.UnitsInStock - 1);  
  4. try  
  5. {  
  6. ctx.SubmitChanges(ConflictMode.ContinueOnConflict);  
  7. }  
  8. catch (ChangeConflictException)  
  9. {  
  10. foreach (ObjectChangeConflict cc in ctx.ChangeConflicts)  
  11. {  
  12. Product p = (Product)cc.Object;  
  13. Reponse.Write(p.ProductID + "  
  14. ");  
  15. cc.Resolve(RefreshMode.OverwriteCurrentValues);   
  16. // 放棄當前更新,所有更新以原先更新為準  
  17. }  

【編輯推薦】

  1. Linq匿名類型簡單概述
  2. Linq隨機讀取數(shù)據(jù)淺析
  3. Linq Lambda表達式全面分析
  4. Linq擴展方法簡單分析
  5. 初探Linq局部變量類型
責任編輯:佚名 來源: IT168
相關(guān)推薦

2022-06-27 08:21:05

Seata分布式事務(wù)微服務(wù)

2010-07-26 13:25:11

SQL Server分

2017-07-26 15:08:05

大數(shù)據(jù)分布式事務(wù)

2022-06-21 08:27:22

Seata分布式事務(wù)

2019-10-10 09:16:34

Zookeeper架構(gòu)分布式

2009-06-19 15:28:31

JDBC分布式事務(wù)

2021-09-29 09:07:37

分布式架構(gòu)系統(tǒng)

2025-04-29 04:00:00

分布式事務(wù)事務(wù)消息

2019-06-26 09:41:44

分布式事務(wù)微服務(wù)

2025-05-15 08:05:00

2022-03-24 07:51:27

seata分布式事務(wù)Java

2010-11-30 13:43:07

SQL備份

2010-07-21 13:53:41

SQL Server分

2010-07-05 15:48:44

SQL Server

2022-03-29 23:17:52

PostgreSQL集群Citus

2018-10-28 17:54:00

分布式事務(wù)數(shù)據(jù)

2020-03-31 08:05:23

分布式開發(fā)技術(shù)

2023-09-11 15:40:43

鍵值存儲云服務(wù)

2023-12-26 08:59:52

分布式場景事務(wù)機制

2022-01-26 13:46:40

分布式事務(wù)集合,這
點贊
收藏

51CTO技術(shù)棧公眾號