private static SqlConnection connection;
public static SqlConnection Connection
{
get
{
string conStr = ConfigurationManager.ConnectionStrings["conStr"].ConnectionString;
if (connection == null)
{
connection = new SqlConnection(conStr);
connection.Open();
}
else if (connection.State == ConnectionState.Broken)
{
int i = 1;
connection.Close();
connection.Open();
}
else if (connection.State == ConnectionState.Closed)
{
connection.Open();
}
return connection;
}
}
大家觉得这样的链接语句有问题吗。
我总是怀疑多用户访问时,出现并发连接数据库时,第二个用户很有可能把第一个用户的connection给关掉
------解决方案--------------------------------------------------------
那怎么会呢,connection是static变量,单实例,唯一出问题的是如果使用多线程,有没有做好同步的话,可能会引起冲突,可能两个线程访问的connection都是null,这样就会有问题了