上下文: 我想了解UnitOfWork模式及其與存儲庫的關係。與所有存儲庫共享NpgsqlConnection
但我有一個與NpgsqlConnnection類有關的基本問題。
我的UnitOfWork包含一個私有字段成員,它是一個NpgsqlConnection:uow_connection。 而我的存儲庫有一個構造函數,它將NpgsqlConnection作爲參數並將其保存在字段成員中。
[1]可以擁有那種設計嗎?(共享所有之間的uow_connection所需的存儲庫)。
由於我的倉庫不實現IDisposable和NpgsqlConnection似乎是一個非託管的ressource,如果垃圾收集器釋放我的倉庫對象,[3]將連接還活着?
我很擔心這個事實,即當前事務的所有需要的存儲庫將共享通過值傳遞的相同的uow_connection。
([2]它是確定地認爲,如果IDisposable的實現,所以它是一個非託管的ressource或管理的ressource可以實現IDisposable,仍然是一個管理的ressource?)
我標記我問題,所以很容易引用它們。
謝謝所有花時間閱讀我的問題。