MySQL Connector从6.9.9迁移到7.0.6

时间:2016-11-24 08:30:46

标签: c# mysql asp.net mysql-connector isolation-level

我们已经从MySQL .Net Connector 6.9.9迁移到.Net Connector 7.0.6,我们正在使用.NET 4.5.1版的连接器。我们的ASP.NET项目使用.NET 4.6.2,因此我们期望与此连接器向后兼容。相同的代码在前一个连接器(6.9.9)上运行正常,但是在使用新连接器时,以下代码会引发异常: 消息:Object reference not set to an instance of an object

using (MySqlConnection conn = new MySqlConnection("Server=localhost; Port=3306; Database=test; Uid=...; Pwd=..."))
{
    conn.Open();
    MySqlTransaction tx = conn.BeginTransaction(System.Data.IsolationLevel.RepeatableRead);
}

为什么新的MySQL .Net连接器(7.0.6)抛出此异常而前一个连接器(6.9.9)没有?我的Mysql版本是5.6。它似乎是在打开交易时尝试执行DataReader

抛出的异常是:

 at MySql.Data.MySqlClient.MySqlCommand.AddCallStatement(String query)
 at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior)
 at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader()
 at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery()
 at MySql.Data.MySqlClient.MySqlConnection.BeginTransaction(IsolationLevel iso)

0 个答案:

没有答案