C# 如何检查到MySql服务器的连接详细信息是否有效?

C# 如何检查到MySql服务器的连接详细信息是否有效?,c#,.net,mysql,C#,.net,Mysql,我试图编写一个函数来检查表单上给出的连接详细信息是否有效,因此它将返回True,否则将返回False: 我怎样才能做到这一点 我的代码如下: private bool checkConnectionSuccess(string host, string user, string pass, string dbname) { string strProvider = "Data Source=" + host + ";Database=" + dbname + ";User ID

我试图编写一个函数来检查表单上给出的连接详细信息是否有效,因此它将返回True,否则将返回False:

我怎样才能做到这一点

我的代码如下:

 private bool checkConnectionSuccess(string host, string user, string pass, string dbname) {
        string strProvider = "Data Source=" + host + ";Database=" + dbname + ";User ID=" + user + ";Password=" + pass;
        MySqlConnection myConn = new MySqlConnection(strProvider);
        myConn.Open();  

        if (________) return true; else return false;


    }
根据给定的详细信息(用户、密码、数据库名、主机),我应该如何检查连接是否成功

谢谢你

使用try-catch块:

private bool checkConnectionSuccess(string host, string user, string pass, string dbname)
{
   string connectionString = "Data Source=" + host + ";Database=" + dbname + ";User ID=" + user + ";Password=" + pass;

   bool sucessful = true;

   using (MySqlConnection conn = new MySqlConnection (connectionString))
   {
     try
     {
       conn.Open();
     }
     catch (MySqlException ex)
     {
       sucessful = false;
     }
   }
    return sucessful;
}

这是可能的,因为MySQLConnection在大多数异常情况下都可能失败,包括凭据错误或连接字符串无效。

使用try-catch块,并设置一个标志,告诉它是否工作

string strProvider = "Data Source=" + host + ";Database=" + dbname + ";User ID=" + user + ";Password=" + pass;
MySqlConnection myConn = new MySqlConnection(strProvider);

bool success = true;

try
{
    myConn.open();
}
catch (Exception e)
{
     success = false;
}

return success;

尝试使用提供的凭据进行连接,如果连接失败,请提供错误消息(或返回true/false)?