这里有一个问题,用户可以输入服务器名称和数据库连接字符串。如果服务器无法访问(地址错误、防火墙或任何其他问题),我希望尽快知道。
如果我使用sqlConnection并尝试连接到不可访问的服务器,这需要很长时间(我认为超过1分钟!)。这与连接超时无关,因此设置此属性将无法帮助。
我的想法是首先尝试ping服务器,如果我得到响应(这意味着从应用程序的角度来看服务器是可访问的),然后继续使用sqlConnection。如果没有来自ping的响应,则操作被中止,并通知用户。
有更好的方法吗?欢迎任何想法。
忘记指出,我正在使用NHibernate,因此无法使用任何MSSQL特定库。另外,目标服务器可以拥有Linux作为操作系统,而不仅仅是Windows。
如果我使用sqlConnection并尝试连接到不可访问的服务器,这需要很长时间(我认为超过1分钟!)。这与连接超时无关,因此设置此属性将无法帮助。
我的想法是首先尝试ping服务器,如果我得到响应(这意味着从应用程序的角度来看服务器是可访问的),然后继续使用sqlConnection。如果没有来自ping的响应,则操作被中止,并通知用户。
有更好的方法吗?欢迎任何想法。
忘记指出,我正在使用NHibernate,因此无法使用任何MSSQL特定库。另外,目标服务器可以拥有Linux作为操作系统,而不仅仅是Windows。