2

私は使っている:

        if (connection.State != ConnectionState.Open)
        {
            OpenConnection();
        }

private bool OpenConnection()
{
    try
    {
        connection.Open();
        return true;
    }
    catch (MySqlException ex)
    {
        //When handling errors, you can your application's response based 
        //on the error number.
        //The two most common error numbers when connecting are as follows:
        //0: Cannot connect to server.
        //1045: Invalid user name and/or password.
        switch (ex.Number)
        {
            case 0:
                Console.WriteLine("Cannot connect to server.  Contact administrator");
                Console.Read();
                break;

            case 1045:
                Console.WriteLine("Invalid username/password, please try again");
                Console.Read();
                break;
        }
        return false;
    }
}

私はいつも得るSystem.InvalidOperationException: The connection is already open。すでに開いているかどうかを確認するので意味がありません。

前もって感謝します。

4

1 に答える 1

2

オープンとクローズ以外の接続状態には、Broken、Closed、Connecting、Executing、Fetching があります。「クローズ」の場合にのみ開こうとする必要があります。それ以外の場合は、別の方法で処理する必要があります。

于 2012-04-15T21:50:26.470 に答える