Mysql .NET 3.5 上的类型加载异常
TypeLoad Exception on Mysql .NET 3.5
我目前正在使用 .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 加载我的 class,因为这是它加载 Mysql dll 或使用它的地方。
知道是什么原因造成的吗?
可能找不到。 f是虚拟光驱还是真实光驱?
您可能会遇到很多问题,如果您从虚拟驱动器加载引用,请为此使用 UNC 路径或真实驱动器。
更好的方法是使用 nuget。它将所有包存储在您的项目所在的同一文件夹中,您可以 select 每次最新版本或您需要的版本。
或者可能是您的 DLL 版本错误。你需要另一个。
感谢贡献者得到了答案
将 "System.Data.dll" 从 "Program Files (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就不会有问题了
我目前正在使用 .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 加载我的 class,因为这是它加载 Mysql dll 或使用它的地方。
知道是什么原因造成的吗?
可能找不到。 f是虚拟光驱还是真实光驱? 您可能会遇到很多问题,如果您从虚拟驱动器加载引用,请为此使用 UNC 路径或真实驱动器。
更好的方法是使用 nuget。它将所有包存储在您的项目所在的同一文件夹中,您可以 select 每次最新版本或您需要的版本。
或者可能是您的 DLL 版本错误。你需要另一个。
感谢贡献者得到了答案
将 "System.Data.dll" 从 "Program Files (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就不会有问题了