我在我的數據訪問層中使用FluentData ORM for .NET。但是,這個問題可能適用於大多數ORM。FluentData的壽命IDbContext
IDbContext的正確使用壽命是多少?每次執行對數據庫的新查詢時,是否應該實例化新的數據庫上下文?我有兩種情況,這是正確的用法?請注意,我正在查詢MS SQL以及MySQL服務器。所以,我想知道是否對達到最大連接有任何影響。是的,我正在多線程上調用數據庫。兩種情況都是安全的嗎?
場景A:
我的倉庫類實現了IDisposable和持有型IDbContext的私有變量。這個變量在構造函數中被實例化,並在類被丟棄時被處理。存儲庫中只有一個上下文實例。
方案B:
我的倉庫類有一個返回IDbContext的新實例的私有方法。每當另一個方法調用數據庫時,他們就調用這個方法來獲得一個新的數據庫上下文。