【问题标题】:What causes ArgumentOutOfRangeException on SqlConnection.Open()?是什么导致 SqlConnection.Open() 上的 ArgumentOutOfRangeException?
【发布时间】:2011-04-02 08:00:09
【问题描述】:

在尝试编写一个简单的 C# ADO.NET 应用程序以连接到我的数据库并管理我的网站的项目条目时,我遇到了一个奇怪的问题,我找不到任何相关信息。我已经验证我的 MySQL 服务器正在接受远程连接,侦听端口 3306,提供的用户名和密码有效,并且主机名正确解析。但是,当调用SqlConnection.Open 时,我收到了一个无意义的异常。

System.ArgumentOutOfRangeException 未处理

需要非负数。

参数名称:计数

下面是调用上述错误的代码,特别是调用m_ActiveConnection.Open()

static public void OpenConnection(CConnectionDescription ConnectionDescription)
{
    try
    {
        SqlConnectionStringBuilder ConnectionStringBuilder = new SqlConnectionStringBuilder();
        ConnectionStringBuilder.DataSource = ConnectionDescription.Address + "," + ConnectionDescription.PortNumber;
        ConnectionStringBuilder.UserID = ConnectionDescription.UserName;
        ConnectionStringBuilder.Password = ConnectionDescription.Password;
        ConnectionStringBuilder.NetworkLibrary = "DBMSSOCN";

        if (m_ActiveConnection != null)
        {
            if (m_ActiveConnection.State != System.Data.ConnectionState.Closed)
            {
                m_ActiveConnection.Close();
            }
            m_ActiveConnection.ConnectionString = ConnectionStringBuilder.ConnectionString;
        }
        else
        {
            m_ActiveConnection = new SqlConnection(ConnectionStringBuilder.ConnectionString);
        }
        m_ActiveConnection.Open();
        m_ActiveConnectionDescription = ConnectionDescription;

        if (ConnectionChanged != null)
        {
            ConnectionChanged();
        }
    }
    finally
    {
        // Error message
    }
}

什么会导致这个异常?我没有传递任何参数来打开并且 ConnectionString 似乎完全有效。我已经检查了我自己的CConnectionDescription 的值。任何帮助将不胜感激。

【问题讨论】:

    标签: c# mysql ado.net


    【解决方案1】:

    据我所知,SqlConnection是用来连接SqlServer数据库的。您应该使用“MySQL Connector/Net”中的 MySqlConnection。

    【讨论】:

    • 我应该预料到这一点,但我希望他们会在这种情况下指定 MSSQL。然后我将切换到使用 MySQL 连接器/网络。非常感谢先生。
    猜你喜欢
    • 2023-04-08
    • 1970-01-01
    • 2010-11-04
    • 1970-01-01
    • 2014-12-18
    • 2011-09-30
    • 1970-01-01
    • 2010-12-31
    相关资源
    最近更新 更多