[英]NuGet Package Reference Versioning and VS Package Manager
我已經在.csproj文件中設置了程序包引用,以接受從屬NuGet程序包的任何次要版本(請參見NuGet程序包版本控制參考示例 )。 例如,可能如下所示:
<!-- Accepts any 6.2.x version. -->
<PackageReference Include="ExamplePackage" Version="6.2.*" />
但是,盡管這似乎可行(即,還原了6.2.2
的最新發行版),但Visual Studio中內置的NuGet軟件包管理器GUI似乎讀取了6.2.0
的軟件包引用,並提示我升級到6.2.2
。 從命令行執行還原似乎會下載6.2.2,但我無法讓VS Package Manager發揮作用。
是否有任何方法可以使VS Nuget軟件包管理器GUI接受6.2.2
實際上已還原的內容?
但是,盡管這似乎可行(例如,還原了6.2.2的最新發行版),但Visual Studio中內置的NuGet軟件包管理器GUI似乎讀取了6.2.0的軟件包引用,並提示我升級到6.2.2。
這是有關使用通配符的PackageReference
版本控制的已知問題。
看來使用通配符*
是NuGet Restore浮動到更高版本的正確方法。 但是,NuGet程序包管理器GUI仍采用最低版本。 當前的解決方法是通過NuGet程序包管理器GUI將nuget程序包更新為最新版本,但是這種方式將刪除通配符*
。
為了跟蹤此NuGet問題,我建議您投票並按照先前報告的問題進行更新和修復通知:
https://github.com/NuGet/Home/issues/3788
希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.