【发布时间】:2022-11-02 16:44:50
【问题描述】:
首先,我对 .NET 很陌生,过去几周我一直在阅读文章和文章,并尝试了我在网上找到的所有内容。
我正在尝试在 .NET >=5 或 .NET Core >= 3 下编译 edge-db (https://github.com/gaelazzo/edge-db),两者的结果相同。 问题不在于编译本身,而在于它何时运行。
这个解决方案是针对旧的 .NET Framework (v. 4.5),我不得不重新创建一个新的解决方案,你可以找到它的一个版本,由 gaelazzo 制作: https://github.com/gaelazzo/edge-db-5(针对 .NET 5.0)
edge-db 旨在通过 edge-sql (https://github.com/gaelazzo/edge-sql) 运行
运行 edge-sql 测试时出现此错误(使用 .NET 5 或 Core,但使用 .NET Framework 4.5 当然可以正常运行):
System.IO.FileNotFoundException: Could not load file or assembly 'System.Runtime, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
我已经研究了好几天了,但它非常通用。我尝试了我在网上找到的所有内容并试图找到原因,但没有。 出于绝望,我尝试在干净的 windows10 机器上编译它,同样的结果,我尝试在那里运行它,同样的结果。
最后一点:我不是这些存储库的所有者 gaelazzo。
谢谢你。
【问题讨论】:
-
lib 子目录。绝不,绝不,绝不复制框架程序集。
-
@HansPassant 你能澄清一下吗?谢谢你。一件事我没有提到,我试图将 System.Runtime.dll 复制到 lib 文件夹中,但它似乎不喜欢它: System.BadImageFormatException: 无法加载文件或程序集 'System.Runtime, Version=5.0 .0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。不应加载引用程序集以供执行。它们只能在 Reflection-only loader 上下文中加载。 (来自 HRESULT 的异常:0x80131058)