MySql.Data.MySqlClient.Replication.ReplicationManager抛出System.TypeInitializationException

问题描述 投票:0回答:2

我的代码访问MySQL数据库时遇到问题。每次我试图打开我的连接时,System.TypeInitializationException都会抛出MySql.Data.MySqlClient.Replication.ReplicationManager。这是我的代码:

DataTable results = new DataTable("Results");
using (MySqlConnection connection = new MySqlConnection("SERVER=127.0.0.1;DATABASE=foo;UID=bar;PASSWORD=foobar;"))
{
    using (MySqlCommand command = new MySqlCommand(queryString, connection))
    {
        command.Connection.Open(); //throws System.TypeInitializationException
        command.ExecuteNonQuery();

        using (MySqlDataReader reader = command.ExecuteReader())
        results.Load(reader);
    }
}

编辑:我猜MySQL驱动程序已损坏。从Windows 7升级到Windows 10后,一切正常。

c# mysql mono
2个回答
0
投票

您的连接字符串格式错误。试试这个 :

static string cs = @"server=localhost;user id=bar;password=foobar;database=foo;";
DataTable results = new DataTable("Results");
using (MySqlConnection connection = new MySqlConnection(cs))
{
    using (MySqlCommand command = new MySqlCommand(queryString, connection))
    {
        command.Connection.Open(); //throws System.TypeInitializationException
        command.ExecuteNonQuery();

        using (MySqlDataReader reader = command.ExecuteReader())
        results.Load(reader);
    }
}

0
投票

我有同样的问题,但当我使用Nuget安装MySql.Data.dll然后问题解决从Nuget安装MySql.Dll文件,

不是来自MySQL网站。

© www.soinside.com 2019 - 2024. All rights reserved.