[英]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.List2.MoveNext()
at System.Collections.Generic.List2.MoveNext()
1..ctor(IEnumerable
at System.Collections.Generic.List1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 collection)
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(任務任務)(任務任務)
at System.Linq.Enumerable.ToList[TSource](IEnumerable
在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.