nia*_*iao 4 singleton sqlconnection
问候,我想问一下,如果创建Singleton只有一个与db的活动连接是个好主意.我想做的是:1)我有一个wcf服务2)wcf服务从db获取数据3)我想创建一个这样的单例只有一个连接到db:
private static PersistanceSingleton _Instance;
public static PersistanceSingleton Instance
{
get
{
if (_Instance == null)
{
_Instance = new PersistanceSingleton();
}
return _Instance;
}
}
Run Code Online (Sandbox Code Playgroud)
我知道这不是一个理想的单身人士,但我只是为了这个后期目的写了它.我想在这里有一些持久性存储库,我将在构造函数中实例化它们.在我的服务类中,我将在构造函数中包含以下代码
_DBPersistanceSingleton = PersistanceSingleton.Instance;
Run Code Online (Sandbox Code Playgroud)
然后当一些请求到来时(例如GetUsersRequest)我想做类似的事情:
_DBPersistanceSingleton.GetUsers()
Run Code Online (Sandbox Code Playgroud)
在每次调用db之前,我还将检查SqlConnection是否打开.如果这是一个很好的做法,请告诉我.我之所以考虑这个解决方案,是因为大量用户将通过客户端应用程序连接到该服务
Meh*_*ari 13
SqlConnection像这样重复使用并不是一个好习惯.在需要时打开它,并在完成后立即关闭它.连接池将在重新使用连接的情况下为您工作.