У меня есть программа winform, которая использует репликацию слиянием, чтобы синхронизировать локальный SQL Express с центральным SQL Server в нашей сети. Из-за характера этого приложения процесс синхронизации запускается автоматически при открытии и закрытии приложения. То, как я это делаю (ниже), кажется довольно трудоемким. Что будет быстрее?
Думая нестандартно, вероятно, было бы хорошо, если бы я просто проверил сам Сервер, хотя это могло бы стать дырой для крайнего случая, когда Сервер доступен, но SQL не работает. С другой стороны, возможно, просто проверяю, доступен ли наш домен, хотя это может оставить ту же дыру, я думаю.
Спасибо!
private static bool IsSqlAvailable()
{
try
{
var conn = new SqlConnection("Data Source=WWCSTAGE;Initial Catalog=Connect;Integrated Security=True");
conn.Open();
conn.Close();
HUD.IsSQLAvailable = true;
return true;
}
catch (Exception)
{
HUD.IsSQLAvailable = false;
return false;
}
}
В качестве дополнительной заметки. Вышеуказанное особенно медленно, когда не в сети. Я даже установил Тайм-аут соединения = 1, и он все еще находится в этой точке довольно долгое время.