Mysql .NET 3.5上的TypeLoad异常

时间:2017-06-14 07:52:31

标签: c# mysql .net dll mono

我目前使用的是.NET 3.5 UnityEngine,Mono,并且正在尝试为我的项目添加Mysql支持。

我从下载(v2)中尝试了很多版本作为参考,并将dll放在正确的位置,但我得到了一个类型加载异常。

平台程序集:f:\ adt \ RustLegacyServer \ rust_server_Data \ Managed \ MySql.Data.dll(此消息无害) TypeLoadException:无法从程序集'Test,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = null'加载类型'MySQLConnector'。

它不想从我的dll加载我的类,因为它是加载Mysql dll或使用它的地方。

任何可能导致此问题的想法?

2 个答案:

答案 0 :(得分:0)

也许它无法找到它。是虚拟驱动器还是真实驱动器? 如果从虚拟驱动器加载引用,使用UNC路径或实际驱动器,则可能会遇到很多问题。

更好的方法是使用nuget。它将所有包存储在项目所在的同一文件夹中,您可以在每次最新版本或所需版本时选择。

或许它是你的DLL的错误版本。你需要另一个。

答案 1 :(得分:0)

感谢贡献者

得到了答案

复制" System.Data.dll"来自"程序文件(x86)\ Unity \ Editor \ Data \ Mono \ lib \ mono \ unity"到您在项目树中使用的DLL文件夹

可能需要使用" I18N.dll"," I18N.West.dll"文件。 我使用的是用于JSON API的MC System.Data,工作正常,但显然Mysql在Unity平台上出于某种原因并不喜欢这样。 Json似乎也在使用那个dll。

可能还需要System.Transactions.dll。如果所有这些都存在,Unity就不会有问题