Вы можете получить строку подключения из объекта SqlConnection.
string s = connection.ConnectionString;
и проверьте источник данных или серверный элемент этой строки.
Редактировать: Предоставлен пример кода.
Я думаю, что эта функция должна работать (в любом случае не тестировалась).
private bool CheckConnectionStringLocalOrRemote(string connectionString) {
//Local machine
IPHostEntry entry = Dns.GetHostByAddress("127.0.0.1");
IPAddress[] addresses = entry.AddressList;
String[] aliases = entry.Aliases;
string hostName = entry.HostName;
if(connectionString.Contains(hostName))
return true;
foreach (IPAddress address in addresses) {
if (connectionString.Contains(address.ToString())) {
return true;
}
}
foreach (string alias in aliases) {
if (connectionString.Contains(alias))
return true;
}
return false;
}
Ps: обязательно добавьте оператор using в пространство имен System.Net.