我在使用MVC2 Web应用程序找到MySQL连接器时遇到了一些麻烦。我正在运行CentOS 5。
我已使用2.0版本的工具将DLL安装到GAC中
$ mono /usr/local/lib/mono/2.0/gacutil.exe -i v2/mysql.data.dll
Installed v2/mysql.data.dll into the gac (/usr/local/lib/mono/gac)
我验证它已更新GAC:
$ ls /usr/local/lib/mono/gac/MySql.Data/6.3.5.0__c5687fc88969c44d/mysql.data.dll
运行应用程序时出现以下错误:
无法找到或加载已注册的.Net Framework数据提供程序MySql.Data.MySqlClient
我创建了一个简单的命令行应用程序:http://www.mono-project.com/MySQL,它在我的Windows机器上的Mono和.NET下运行,但在我的Linux机器上不起作用。
答案 0 :(得分:4)
就您添加到GAC mysql.data.dll
而言,您确定要引用它或者MySQL.Data.dll
吗? Linux具有区分大小写的文件系统,因此解决方案中的引用也是如此。
答案 1 :(得分:2)
答案 2 :(得分:1)
有两个问题:
要更新Mono machine.config文件,您需要找到machine.config文件。在Cent OS的情况下,它们位于(/usr/local/etc/mono/2.0/machine.config)。我只是将我的Windows .NET machine.config文件中的内容复制到我的单声道文件中,然后就可以了。
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.3.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />