决定两个IP地址

时间:2012-10-20 14:56:14

标签: c# mysql ip

我有一个Windows应用程序表单,可以输入IP以连接到MySQL数据库。我需要的帮助是如何编程,这样如果输入IP不存在或者没有响应我的表单应该返回一条消息并连接到默认IP,即localhost。

2 个答案:

答案 0 :(得分:0)

您可以先尝试连接到远程数据库,如果由于某种原因失败(当IP有效时也可能失败,但没有mysqld服务器正在运行且可在那里访问),请连接到本地数据库(但通知用户)。

答案 1 :(得分:0)

您可以尝试这样的事情:

MySqlConnection connection;

if (this.TryConnect("xxx.xxx.xxx.xxx", out connection))
{
    // display error message here   
}
else if (this.TryConnect("localhost", out connection))
{
    // code here
}

以下是TryConnect函数的样子:

public bool TryConnect(string ServerIP, out MySqlConnection connection)
{
    try
    {
        const string connectionString = "Server={0};Database=<database>;Uid=<username>;Pwd=<password>;";
        var conn = new MySqlConnection(string.Format(connectionString, ServerIP));

        conn.Open();
        conn.Close();
        connection = conn;
        return true;
    }
    catch (Exception)
    {
        connection = null;
        return false;
    }
}