2010-10-15 81 views
1

我一直在玩弄一些POCO對象和EntityFramework。因此,我必須編寫自己的上下文和存儲庫。我希望所有的存儲庫使用相同的上下文實例,以便在它們之間共享更改。爲了方便起見,我將我的上下文編碼爲單例。這樣的方式,而不是獲取一個新的上下文,然後將它傳遞給所有我的倉庫contstructor我可以讓默認的contstructor獲得單例實例。辛格爾頓對象處置

我的問題是:

我需要處理一個單身的?

我可以離開它並依靠垃圾收集嗎?

如果我需要處理它,我該怎麼做?

這是一種可以接受的做法,還是有一些原因,我不應該使用我不知道的單身人士?

+0

如果你使用的是Unity這樣的IoC產品,它會向你的構造函數注入一個實例,所以你不必「通過「任何東西,只要該單個實例不包含您需要的狀態信息。 – 2010-10-15 21:47:11

回答

0

如果你留下我們的課,GC只有在你的程序關閉時纔會處理它。關於Do I need to dispose of a singleton?這是您的個人需求。如果您不想重新創建對象的實例,請創建DestroyInstance方法並在其中設置_instance = null。但我認爲Singleton是一個實現,你的實例必須永遠離開..