使用ILMerge时出现Void System.Threading.Monitor.Enter错误

本文关键字:Threading Monitor Enter 错误 System Void ILMerge 使用 | 更新日期: 2023-09-27 18:00:56

我正试图使用ILMerge将我的C#程序与3个引用的DLL结合起来。如果我在不合并它们的情况下运行程序,一切都运行得很好,但当我合并它们时,我会得到"Void System.Threading.Monitor.Enter"错误。

以下是我正在组合的DLL:

HTMLAgilityPack.dll
MySql.Data.dll
RKLib.ExportData.dll

错误似乎来自MySql.Data.dll,但我真的不确定它为什么会引发这个异常。

任何想法都非常感谢。

编辑:我收到的完整错误是:

************** Exception Text **************
System.MissingMethodException: Method not found: 'Void System.Threading.Monitor.Enter(System.Object, Boolean ByRef)'.
at MySql.Data.MySqlClient.MySqlConnection.set_ConnectionString(String value)
at MySql.Data.MySqlClient.MySqlConnection..ctor(String connectionString) in :line 0

使用ILMerge时出现Void System.Threading.Monitor.Enter错误

您使用的是哪个版本的框架?例如,如果您使用4.0/4.5,则可能需要设置一个targetplatform选项。

/targetplatform:version,platformdirectory