C#如何从本地网络检查远程IP地址
目前,我正在开发一个基于Windows的系统,它使用mySQL作为数据库。数据库可以位于连接到同一网络的远程计算机上。C#如何从本地网络检查远程IP地址,c#,ip-address,C#,Ip Address,目前,我正在开发一个基于Windows的系统,它使用mySQL作为数据库。数据库可以位于连接到同一网络的远程计算机上。 我的问题是,如何检查作为我的数据库源的远程地址是否存在或当前可访问。连接到它。它无法访问,无法连接,请确保您优雅地处理错误。(说真的,我不认为数据库驱动的应用程序有责任做与网络相关的事情。)当你在它已经打开时检查它时,这会泄漏连接。@BartFriederichs:当然可以,但是我们还有比这更好的选择吗?我在想…回去之前把它关上。或者使用可能可用的IsConnected标志。@
我的问题是,如何检查作为我的数据库源的远程地址是否存在或当前可访问。连接到它。它无法访问,无法连接,请确保您优雅地处理错误。(说真的,我不认为数据库驱动的应用程序有责任做与网络相关的事情。)当你在它已经打开时检查它时,这会泄漏连接。@BartFriederichs:当然可以,但是我们还有比这更好的选择吗?我在想…回去之前把它关上。或者使用可能可用的
IsConnected
标志。@BartFriederichs:我使用State
peroperty检查它是否打开,你能看一下吗?这仍然会泄漏,因为你没有关闭连接,它的对象将被垃圾收集。
bool CheckConnectionStatus()
{
String strConnection="/*your connection string here*/";
SqlConnection con = new SqlConnection(strConnection);
if(con.State == ConnectionState.Closed)
{
try
{
con.Open();
con.Close();
}
catch(Exception e)
{
return false;
}
}
else
{
return true;
}
}