检测SQL Server重新启动

时间:2016-01-16 11:16:16

标签: c# sql-server ado.net

我的c#控制台应用程序在与我的SQL Server 2014不同的计算机上运行。我使用ado.net连接到它。如何在安装Windows更新后检测sql server是否自动重启?在我的客户端应用程序上,我使用SystemEvents_SessionEnding,但这对我没有帮助。

我读过关于连接弹性的内容,但这似乎也没有解决这个问题。

我可以捕获特定的ado.net事件吗?在发送UDP的服务器上创建应用程序不是我喜欢的解决方案,我也不想使用ping等。

我真的在寻找像事件一样的东西。

e.g。通知服务:https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlnotificationinfo(v=vs.110).aspx

谢谢!

1 个答案:

答案 0 :(得分:2)

如果您想查看服务器是否已关闭,可以使用Ping Class。

using System.Net.NetworkInformation;

var ping = new Ping();
var reply = ping.Send("SqlServerIP");

if (reply.Status == IPStatus.Success)
{
    //server is available
}
else
{
    //server is down
}