簡體   English   中英

使用舊解決方案將nuget包添加到.net核心項目時如何修復$(NETStandardImplicitPackageVersion)錯誤?

[英]How to fix $(NETStandardImplicitPackageVersion) error when adding nuget packages to .net core project with older solution?

我們有一個包含很多項目的現有.NET解決方案。 我最近在解決方案中添加了一個新的ASP.NET核心項目。 當我嘗試將Nuget包添加到解決方案時,添加失敗,我在包管理器輸出窗口中收到以下錯誤。 如果我創建一個新的解決方案並將相同的項目添加到解決方案中,那么我就可以添加Nuget包,因此將新的.NET核心項目添加到現有解決方案似乎是一個問題。 任何人都可以幫助我解決這個問題,而無需重新創建解決方案嗎?

System.ArgumentException:'$(NETStandardImplicitPackageVersion)'不是有效的版本字符串。 在NuGet.Versioning.VersionRange.Parse(String value,Boolean allowFloating)at at
System.Linq.Enumerable.WhereSelectEnumerableIterator中的NuGet.PackageManagement.VisualStudio.VsManagedLanguagesProjectSystemServices.ToPackageLibraryDependency(PackageReference reference) 2.MoveNext()
at System.Collections.Generic.List
2.MoveNext()
at System.Collections.Generic.List
2.MoveNext()
at System.Collections.Generic.List
1..ctor(IEnumerable 1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable
1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable
1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable
1 source)at NuGet.PackageManagement.VisualStudio.VsManagedLanguagesProjectSystemServices.d__23.MoveNext()---從拋出異常的上一個位置的堆棧跟蹤結束---在System。 System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd上的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任務任務)中的Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任務任務)(任務任務)

在NuGet.PackageManagement.VisualStudio.LegacyPackageReferenceProject.d__27.MoveNext()---從拋出異常的上一個位置的堆棧跟蹤結束---在System.Runtime的System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任務任務)。 NuGet.PackageManagement.VisualStudio.LegacyPackageReferenceProject.d__14.MoveNext()中的CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任務任務)---拋出異常的前一個位置的堆棧跟蹤結束---在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (任務任務)位於NuGet.PackageManagement.DependencyGraphRestoreUtility.d__6.MoveNext()的System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任務任務)---從拋出異常的上一個位置的堆棧跟蹤結束---在系統。 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification中的Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任務任務)(任務tas k)在NuGet.PackageManagement.DependencyGraphRestoreUtility.d__2.MoveNext()---從拋出異常的先前位置開始的堆棧跟蹤結束---在System.Runtime的System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任務任務)。 System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd上的CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任務任務)(任務任務)
在NuGet.PackageManagement.NuGetPackageManager.d__75.MoveNext()---從拋出異常的先前位置開始的堆棧跟蹤結束---在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任務任務)

不確定這是否與我遇到的問題相同,但對我來說,修復它的方法是確保我的sln文件中的GUID匹配。

例如:

Project("{PROJECT-GUID}") = "ProjectA", "ProjectA\ProjectA.csproj", "{GUID-PROJECT-A}"
EndProject
Project("{PROJECT-GUID}") = "ProjectB", "ProjectB\ProjectB.csproj", "{GUID-PROJECT-B}"
EndProject
Project("{SOME-OTHER-GUID}") = "ProjectC", "ProjectC\ProjectC.csproj", "{GUID-PROJECT-C}"
EndProject

我不得不用PROJECT-GUID替換SOME-OTHER-GUID。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM