[英]Assembly Exception in ASP.Net Core Angular project
我有一個ASP.NET Core Angular Web應用程序。 我使用Visual Studio 2017角模板創建了這個項目。 我制作了一個具有最新依賴關系的非常基本的應用程序:
我們可以構建應用程序,但是在調試時,會遇到如下異常:
System.IO.FileLoadException HResult = 0x80131040消息=無法加載文件或程序集“ System.ComponentModel.Primitives,版本= 4.2.0.0,區域性=中性,PublicKeyToken = b03f5f7f11d50a3a”。 找到的程序集的清單定義與程序集引用不匹配。 (來自HRESULT的異常:0x80131040)
源= Microsoft.Extensions.FileProviders.Physical
這是StackTrace:
StackTrace: 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)中(出於源代碼控制的目的)。
通過在“ frameworks”下的project.json中添加以下內容,來禁用特定於執行的運行時程序集:
"System.ComponentModel.Primitives": {
"version": "4.1.0", // or whatever version you have
"exclude": "runtime"
},
這是一種解決方法。 發生這種情況是因為尚未針對每個平台(例如Ubuntu)發布特定於平台的System.ComponentModel.Primitives
版本。 更多細節在這里 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.