gpt4 book ai didi

C# 单声道 : TypeLoadException when trying to use a DLL reference

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:59:44 31 4
gpt4 key购买 nike

我是 Mono/.NET 的新手,所以我不太确定我添加的引用是否正确。我正在尝试实现 Fleck WebSockets。我下载了源代码,在 MonoDevelop 中打开解决方案,然后构建它。我将生成的“Fleck.dll”和“Fleck.dll.mdb”放入我的项目文件夹中。然后,在 MonoDevelop 中,我转到解决方案中的引用编辑器并选择 Fleck.dll 作为 .NET 程序集引用。

它似乎工作正常,MonoDevelop 找到了该程序集中的所有内容。如果我输入“Fleck”。然后自动完成弹出该 DLL 的所有成员,但如果我编写一些代码尝试使用它,我会得到一个 TypeLoadException。它编译并运行但立即抛出该异常。

我正在使用我发现的示例中的代码,因此我认为这不是问题。这是我的完整异常输出:

Could not load signature of Fleck.SocketWrapper:Accept due to: 
Could not load signature of Fleck.ISocket:Accept due to:

Unhandled Exception: System.TypeLoadException: Could not load type 'Fleck.SocketWrapper' from assembly 'Fleck, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.
at Fleck.WebSocketServer..ctor (System.String location) [0x00000] in <filename unknown>:0
at TestServer.MainClass.Main (System.String[] args) [0x00000] in /home/danny/Projects/TestServer/Main.cs:10
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeLoadException: Could not load type 'Fleck.SocketWrapper' from assembly 'Fleck, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.
at Fleck.WebSocketServer..ctor (System.String location) [0x00000] in <filename unknown>:0
at TestServer.MainClass.Main (System.String[] args) [0x00000] in /home/danny/Projects/TestServer/Main.cs:10

我做错了什么?

最佳答案

它对我来说很好用。我在 Ubuntu 上使用 Mono 2.10.8。我所做的是:

  1. 从您指向的存储库中克隆了 Fleck。
  2. 运行 Nuget 以下载测试所需的包(这实际上不是必需的,因为它们已经在存储库中)。
  3. 已编译 Fleck,其测试和测试控制台应用程序包含在解决方案中。
  4. 应用程序运行成功。
  5. NUnit 报告所有测试也成功运行。

所以我敢打赌它应该能正常工作。您的 Mono 版本是什么?

哦,我还明确地将所有提到的项目的框架版本设置为 4.0(这对于正确编译至关重要)。

关于C# 单声道 : TypeLoadException when trying to use a DLL reference,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8673254/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com