Сначала я отсоединяю сетевой кабель.SQL-соединение не синхронизируется быстро при отключении сетевого кабеля
Затем я пытаюсь подключиться к SQL Server внутри C# с использованием объекта SqlClient.SqlConnection и строку соединения, либо не указывать тайм-аут соединения (и, следовательно, по умолчанию 15 секунд): Integrated Security=SSPI;Persist Security Info=False;Data Source=MYSERVER;Database=MYDB"
или соединение строка, которая задает тайм-аут, даже короче через 5 секунд: "Integrated Security=SSPI;Persist Security Info=False;Data Source=MYSERVER;Database=MYDB;Connect Timeout=5"
В любом случае, вызов connection.Open
возвращается через 42 секунды с моей ошибкой таймаута. Если я снова подключу свой сетевой кабель раньше, я могу спровоцировать ошибку раньше. Почему таймаут соединения не имеет эффекта? Это где-то документально? Есть ли способ обойти это?
Я предполагаю, что он ищет тайм-аут SQL на основе найденного SQL-поля (чистого тайм-аута SQL). Тайм-аут сети раздельный. Вы можете выполнить ping, прежде чем пытаться подключиться. – Paparazzi