我有一个 ASP.NET Core Angular Web 应用程序。我使用 Visual Studio 2017 Angular 模板创建了这个项目。我用最新的依赖项制作了一个非常基本的应用程序:
- Microsoft.AspNetCore.All (2.0.7) 作为 NuGET
- Microsoft.NETCore.App (2.0.0) 作为 SDK
我们可以构建应用程序,但在调试时,我们遇到如下异常:
System.IO.FileLoadException HResult=0x80131040 Message=无法加载文件或程序集“System.ComponentModel.Primitives,版本=4.2.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”。找到的程序集的清单定义与程序集引用不匹配。(来自 HRESULT 的异常:0x80131040)
Source=Microsoft.Extensions.FileProviders.Physical
这是堆栈跟踪:
堆栈跟踪:在Microsoft.Extensions.FileProviders.PhysicalFileProvider.CreateFileWatcher(String root)
at Microsoft.AspNetCore.Hosting.Internal.HostingEnvironmentExtensions.Initialize(IHostingEnvironment hostingEnvironment, String applicationName, String contentRootPath, WebHostOptions options) at Microsoft.AspNetCore.Hosting.WebHostBuilder.BuildCommonServices(AggregateException& hostingStartupErrors) at Microsoft.AspNetCore.Hosting.WebHostBuilder.Build() at WebApp.Program.BuildWebHost(String[] args) in D:\Source\WebApp\Program.cs:line 21 at WebApp.Program.Main(String[] args) in D:\Source\WebApp\Program.cs:line 17
我们尝试使用旧版本的 ASP.NET Core 并返回。问题解决了,但是下次我们打开项目时会发生同样的异常。我们无法将 Microsoft.NETCore.App (2.0.0) 的版本更改为较新的版本,因为它是
blocked by the project
.
请注意,我们已将 NugetPackages 的位置更改为特定文件夹 (D:\Source\Library)(出于源代码控制的目的)。