В этом проблема. Пользователь может ввести имя сервера и строку подключения для базы данных. Если сервер недоступен (неправильный адрес, брандмауэры или любая другая проблема), я хочу знать об этом как можно быстрее.Проверьте, существует ли сервер
Если я использую sqlConnection и пытаюсь подключиться к незащищенному серверу, это занимает очень много времени (я думаю, более 1 минуты!). Это не имеет никакого отношения к тайм-ауту соединения btw, поэтому установка этого свойства не поможет.
Моя идея - сначала попробовать сервер ping, и если я получу отклик (что означает, что сервер доступен с точки приложения), чем приступить к sqlConnection. Если ответа от пинга нет, операция прерывается, и пользователь уведомляется о нем надлежащим образом.
Есть ли лучший способ сделать это? Любая идея будет приветствоваться.
Забыл указать, я использую NHibernate, поэтому я не могу использовать какую-либо конкретную библиотеку MSSQL. Кроме того, целевой сервер может иметь ОС Linux, а не только Windows.
Это было бы предположить, что существует операционная система Windows на системы наведения, не так ли? Если это так, я не могу использовать этот подход. – buhtla
, это было бы очень верно, это полностью ориентировано на Windows ... поскольку подход для mysql на linux, скорее всего, был бы совершенно иным, чем оракул на окнах или любой другой комбинации. – curtisk