【问题标题】:MySql .Net connector issue - MonoDevelop on LinuxMySql .Net 连接器问题 - Linux 上的 MonoDevelop
【发布时间】:2012-04-16 10:58:01
【问题描述】:

我有一段 C# 代码,我正在 Ubuntu 11.10 下的 MonoDevelop 中编译。我已经为 Mono (using MySql.Data.MySqlClient;) 引用了 MySql,如果我在 Windows 下尝试相同的代码,它会很好地工作。我不得不将 mysql.data.dll 文件重命名为 MySql.Data.dll 以使其在 Linux 中工作。

当我尝试打开 Mysql 连接时,我从 MonoDevelop 中的 Ubuntu 机器上获得了这个堆栈跟踪:

  at MySql.Data.MySqlClient.NativeDriver.Open () [0x00000] in <filename unknown>:0 
  at MySql.Data.MySqlClient.Driver.Open () [0x00000] in <filename unknown>:0 
  at MySql.Data.MySqlClient.Driver.Create (MySql.Data.MySqlClient.MySqlConnectionStringBuilder settings) [0x00000] in <filename unknown>:0 
  at MySql.Data.MySqlClient.MySqlConnection.Open () [0x00000] in <filename unknown>:0

我的执行代码如下所示,其中 _dbConn 是 MySqlConnection:

            string connectionString = String.Format("Server={0};Database={1};User ID={2};Password={3};Pooling=false", 
                DbLocation, DbData, DbUser, DbPassw);

            _dbConn = new MySqlConnection(connectionString);
            //On the Open, I get the error
            _dbConn.Open();

有人见过这个问题和/或知道如何解决这个问题吗? 注意:我使用的是最新版本的 MySql .Net Connector for Mono。

【问题讨论】:

  • 堆栈跟踪的异常消息说明了什么?
  • @RolfBjarneKvinge 它说:“MySql.Data.MySql.Client.MySqlException 已被抛出。无法连接到任何指定的 MySQL 主机。”我使用终端通过 MySql 连接没有问题。我已经仔细检查了我的字符串值,它们与我在终端中使用和看到的相同(嗯,除了我没有在那里指定的“localhost”)。

标签: c# mysql ubuntu mono monodevelop


【解决方案1】:

自己解决了。原来 Mono 在这台机器上不是最新的。由于未添加 badgerport 存储库,因此无法看到它。升级到最新版本解决了这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-25
    相关资源
    最近更新 更多