检查域连接的网络连接

时间:2012-01-31 09:50:14

标签: .net outlook add-in

我正在为.Net中的Outlook 2010开发一个COM加载项项目。此加载项程序会在后台自动将客户端电子邮件发送到SQL Server数据库上。根据要求,我必须在发送或接收每封电子邮件之前检查数据库服务器连接,如果连接则自动归档,否则标记为脱机电子邮件。如果用户连接到数据库服务器的任何时间点,则应执行电子邮件同步过程。

要检查数据库连接我正在使用Ping命令到数据库服务器,如果用户登录域但在域外需要花费大量时间来响应,它会起作用,有时它会返回false,尽管用户已连接。

我正在线上检查网络连接,然后检查数据库连接但是如果用户连接到互联网而不是数据库服务器ping命令失败并且减慢了应用程序的速度。我正在寻找的是检查连接到域的用户是否只检查数据库连接。要对每封电子邮件执行此检查,我需要一种非常快速的方法。

我在ping之前尝试了Dns.GetHostByName()System.Net.WebRequest()但如果用户不在域上,则响应非常慢,重置System.Net.WebRequest()超时设置没有任何区别。

如果有人可以就此提出建议我很感激。

提前致谢

0 个答案:

没有答案