Я работаю над проектом надстройки COM для Outlook 2010 в .Net.Эта надстройка автоматически подает электронные письма гостей в базу данных сервера SQL в фоновом режиме.В соответствии с требованиями, я должен проверять соединение с сервером базы данных перед отправкой или приемом каждого электронного письма и автоматически подавать файл, если он подключен, в противном случае помечать как автономное электронное письмо.Если в какой-то момент времени пользователь подключается к серверу БД, должен выполняться процесс синхронизации электронной почты.
Для проверки соединения с БД я использую команду Ping к серверу БД, он работает, если пользователь вошел в домен, но за пределамиДля ответа на домен требуется много времени, иногда он возвращает false, хотя пользователь подключен.
Я работал на линии, чтобы сначала проверить сетевое подключение, а затем проверить подключение к базе данных, но если пользователь подключился к Интернету, но не кКоманда ping сервера БД не работает и замедляет работу приложения.Я ищу, чтобы проверить, подключен ли пользователь к домену, а затем проверить только соединение с БД.Чтобы выполнить эту проверку на каждое письмо, мне нужен очень быстрый метод.
Я пробовал Dns.GetHostByName()
и System.Net.WebRequest()
перед выполнением ping, но они очень медленно отвечают, если пользователь не находится в домене, сброс параметра System.Net.WebRequest()
Timeout не имеет значения.
Буду признателен, если кто-нибудь посоветует мне это.
Заранее спасибо