.net core 静态加载在.Net Core 3.0中不起作用的库
我创建了一个包含3个项目的解决方案.net core 静态加载在.Net Core 3.0中不起作用的库,.net-core,visual-studio-2019,.net-core-3.0,.net Core,Visual Studio 2019,.net Core 3.0,我创建了一个包含3个项目的解决方案a、B和C。 前提是A和B是库,C是控制台应用程序 其中参考用法为: A使用B C使用A和B 为什么当我执行C时,它加载A,但加载B失败(可能是因为它已经通过A加载了) 这是使用库动态加载的项目中的一个典型问题,但在我的例子中,我的lib是静态添加到引用中的,那么为什么会发生这种情况呢 我正在Visual Studio 2019中使用.Net Core 3.0预览版6(版本16.1.4) 回购: 其中A是Runes.Core,B是Runes.Async,C是Ru
a
、B
和C
。
前提是A
和B
是库,C
是控制台应用程序
其中参考用法为:
A
使用B
C
使用A
和B
为什么当我执行C
时,它加载A
,但加载B
失败(可能是因为它已经通过A
加载了)
这是使用库动态加载的项目中的一个典型问题,但在我的例子中,我的lib是静态添加到引用中的,那么为什么会发生这种情况呢
我正在Visual Studio 2019中使用.Net Core 3.0预览版6(版本16.1.4)
回购:
其中
A
是Runes.Core
,B
是Runes.Async
,C
是Runes.Lab
,如果这都在同一个解决方案中。。删除项目之间的所有引用并重新添加它们欢迎使用stackoverflow。请提供加载库的代码和引发的异常,以便定位问题。我不使用任何代码加载库,因为它在项目的“引用”部分静态引用。我在运行时遇到的异常是FileNotFoundException(无法加载库A
,因为系统找不到指定的文件)。当然,我检查了文件是否在正确的输出文件夹中。更重要的是,我可以动态加载它,但我的问题是它为什么不能静态工作。您只能使用PackageReference
、FrameworkReference
或ProjectReference
而不是.NET Core上的Reference
。@Alsein,我把它作为ProjectReference,但它不起作用。C或a是否静态地使用了B中定义的任何类型?如果不是,我可能有答案,如果所有的项目都在同一个解决方案;你的错误应该没有理由。您是否能够将解决方案上载到Github,以便我们查看/复制该问题?