'Could not load file or assembly'、dll 引用 asp.net 核心 2 应用程序

'Could not load file or assembly', dll reference asp.net core 2 application

我的 运行 我的 asp 核心 2 网络应用程序出现引用错误。我的网络(核心 2)项目引用了另一个(.dll 输出)项目 (.net 4.7),该项目安装了 Windsor.Core 和 windsor.castle nuget 包。当运行 web 项目时,出现以下错误:

System.IO.FileNotFoundException: 'Could not load file or assembly 'Castle.Windsor, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc'. The system cannot find the file specified.'

两个项目都针对 x64(另一个库需要)。 Windsor.Core 和 castle dll 的属性:

Windsor 库仅添加到 .dll 项目中。当我还将相同的 nuget 包添加到 asp.net 核心项目时,程序崩溃并显示以下消息:

System.MissingMethodException: 'Method not found: 'Castle.MicroKernel.Registration.IWindsorInstaller Castle.Windsor.Installer.FromAssembly.This()'.'

对我来说,似乎只加载了库的一部分。

两个 Windsor.Castle / 核心库都可以在 asp.net 核心 2 Web 应用程序的输出目录中找到。但是为什么找不到呢?

用户 AsifAli72090 是对的,我也认为类似的问题是问题所在,但我的 google 结果没有给我答案。

我通过在我的解决方案中创建一个新的 .net core dll 项目解决了这个问题,并将我的所有文件移到了那里。您可以 google 了解如何转换为 .net 核心项目,但这并不像在设置中检查或切换下拉菜单那么容易。那时一切都完美无缺!