C#MySql Connector /网络问题
作者:互联网
当前正在运行Mono.我在位于/usr/lib / mono / gac的gac文件夹中加载了MySQL并安装了connector / net.问题是每次我尝试使用简单的连接测试来运行它时,都会出现以下错误:
** (/home/holland/Code/csharp/test/Test/bin/Debug/Test.exe:10278): WARNING **: The following assembly referenced from /home/holland/Code/csharp/test/Test/bin/Debug/Test.exe could not be loaded:
Assembly: MySql.Data (assemblyref_index=1)
Version: 6.4.4.0
Public Key: c5687fc88969c44d
The assembly was not found in the Global Assembly Cache, a path listed in the MONO_PATH environment variable, or in the location of the executing assembly (/home/holland/Code/csharp/test/Test/bin/Debug/).
** (/home/holland/Code/csharp/test/Test/bin/Debug/Test.exe:10278): WARNING **: Could not load file or assembly 'MySql.Data, Version=6.4.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies.
** (/home/holland/Code/csharp/test/Test/bin/Debug/Test.exe:10278): WARNING **: Missing method .ctor in assembly /home/holland/Code/csharp/test/Test/bin/Debug/Test.exe, type MySql.Data.MySqlClient.MySqlConnection
** (/home/holland/Code/csharp/test/Test/bin/Debug/Test.exe:10278): WARNING **: Could not load file or assembly 'MySql.Data, Version=6.4.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies.
** (/home/holland/Code/csharp/test/Test/bin/Debug/Test.exe:10278): WARNING **: Missing method .ctor in assembly /home/holland/Code/csharp/test/Test/bin/Debug/Test.exe, type MySql.Data.MySqlClient.MySqlConnection
Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'MySql.Data, Version=6.4.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies.
File name: 'MySql.Data, Version=6.4.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d'
at Test.MainClass.Main (System.String[] args) [0x00000] in <filename unknown>:0
如果我没记错的话,应该是一个汇编文件
这是我的代码:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using MySql.Data.MySqlClient;
namespace Test
{
public class Database
{
public Database()
{
}
public static IDbConnection MainConnect()
{
string connectionInfo =
"Server=localhost;"+
"Database=ecom_main;"+
"User ID=root;"+
"Password=xxxxxxx"+
"Pooling=false;";
return new MySqlConnection(connectionInfo);
}
using System;
using System.Data;
using MySql.Data.MySqlClient;
namespace Test
{
class MainClass
{
public static void Main (string[] args)
{
IDbConnection dbMain = Database.MainConnect();
Console.WriteLine(dbMain);
}
}
}
解决方法:
我遇到了同样的问题,请按照以下步骤解决:
>使dll的副本大小写敏感:
#cp mysql.data.dll MySql.Data.dll
>安装连接器
#gacutil -i -package 2.0 MySql.Data.dll
这会安装在GAC中,并且还会在/usr/lib/mono/2.0中添加符号链接
>如果程序集未出现在monodevelop中,则可以将对项目中dll的引用添加到/usr/lib/mono/2.0
信息:http://dev.mysql.com/doc/refman/5.1/en/connector-net-installation-unix.html
标签:connector-net,c,mysql,idbconnection 来源: https://codeday.me/bug/20191102/1989047.html