C#到SQL Server的持久连接

本文关键字:连接 Server SQL | 更新日期: 2023-09-27 18:00:52

我正在编程一个C#TCP服务。在该服务中,客户端连接到我们的TCP服务器获取或写入一些数据。

问题:

早上,我们重新启动数据库服务器,服务失去了与数据库当下一个请求进入我们的系统时,不再有数据库连接。

有人知道我能做什么吗?

重新启动后,如何保留或重新连接数据库服务器?

C#到SQL Server的持久连接

在您的情况下,我认为在整个使用寿命内最好不要维护到sql数据库的打开的SqlConnection。

相反,安装一个SqlConnection对象,打开它,处理查询,然后关闭它:它将使用SQL server的内部连接池机制。

例如,您可以将每个查询包含在打开和关闭连接的代码块中:

using(var cn = new SqlConnection(csString))
{
    cn.Open();
    ... // your query
    cn.Close();
}

这样,当数据库每晚重新启动时,它对您来说将是透明的。