根據微軟檔案“DbContext 實體旨在用于單個作業單元。這意味著 DbContext 實體的生命周期通常非常短。” 我選擇范圍、單例或瞬態的生命周期是多少?如果我使用 DBcontext 物件作為單例會出現什么問題
uj5u.com熱心網友回復:
你打電話時
services.AddDbContext<MyContext>(options => { });
該DbContext會注冊為范圍的服務。因此,將為每個請求創建一個新實體。
這是最靈活的方法,因為它允許您根據與例如關聯的租戶配置不同的 ConnectionString HttpContext(例如:不同的 ConnectionString 取決于HttpContext.Request.Host)
uj5u.com熱心網友回復:
重用 的相同實體DbContext將導致錯誤:呼叫SaveChanges將保存由 . 的不同使用者修改的所有跟蹤物件DbContext。
如果您擔心性能,您可以查看DbContext pooling
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/343457.html
下一篇:每頁最多存盤6張卡片
