myesn

myEsn2E9

hi
github

ABP 單元工作(工作單元)

ABP 中的工作單位是用來管理數據庫連接和事務的

數據庫連接需要 盡晚打開,盡早釋放。以事務的方式執行數據庫操作已被認為是一種最佳實踐。

ABP 中的連接和事務管理#

ABP 兼備了這兩種方法並且提供了一個簡單而又有效的模型。

倉庫類 Repository#

倉庫是執行數據庫操作主要的類。當進入一個倉庫方法時,ABP 會打開一個數據庫連接(可能不是立即打開,但是在第一次使用數據庫時肯定是打開的,取決於 ORM 提供者的實現)並開始一個事務。因此,在一個倉庫方法中可以安全地使用連接。在方法結束後,事務被提交並且連接被釋放。如果倉庫方法拋出任何異常,那麼事務都會回滾且連接被釋放。這樣一來,倉庫方法就是原子的(一個工作單位)。

如果一個倉庫方法調用了其他的倉庫方法(一般而言,如果一個工作單位調用了其他的工作單位方法),那麼它們共享相同的連接和事務。第一個進入的方法管理連接和事務,其他方法使用相同的連接和事務。

工作單位#

工作單位對於倉庫和應用服務方法隱式有效。如果你想在其他地方控制數據庫連接和事務,那麼可以顯式使用它。

參考#

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。