問候,我想問一下,如果創建Singleton只有一個活動連接到數據庫是個好主意。我想這樣做的是: 1)我有一個WCF服務 2)WCF服務從數據庫 3)我想創建這樣一個單獨獲取的數據只具有一個連接到數據庫:SqlConnection Singleton
private static PersistanceSingleton _Instance;
public static PersistanceSingleton Instance
{
get
{
if (_Instance == null)
{
_Instance = new PersistanceSingleton();
}
return _Instance;
}
}
我知道這不是一個理想的單身人士,但我只是爲了這個帖子而寫了它。 我想在這裏有一些持久性存儲庫,我將在構造函數中實例化它們。 在我的服務類我會內部構造下面的代碼
_DBPersistanceSingleton = PersistanceSingleton.Instance;
然後,當一些請求時(如GetUsersRequest)我想這樣做:
_DBPersistanceSingleton.GetUsers()
每次調用之前db是執行我也會檢查SqlConnection是否打開。 請讓我知道這是否是一種好的做法。我之所以想到這個解決方案的原因是因爲大量的用戶將通過客戶端應用程序連接到該服務。
最理想的單身人士是你永遠不會創造的。 – Hardryv 2010-03-04 20:01:38
對於您在一個靜態應用程序類中維護單個SQLConnection可能是最理想的,並且需要使用try..catch..finally分組來確保您在使用後始終關閉它。這在我們的企業應用程序中效果很好。 – Hardryv 2010-03-04 20:04:42