[英]Installing .NET Framework package to PCL attempts to install .NET Standard packages
[英]Automating .net framework package installation: resolving package dependency on other packages
長話短說:我正在嘗試通過 VS2019 包管理器控制台在解決方案中自動化包 .net 框架 nuget 更新,但我無法獲得對其他包的包依賴(盡管我知道數據可用,因為您可以在用戶界面)。
說來話長長:我想對.NET框架自動化的NuGet安裝,我選擇使用Visual Studio中的包管理器控制台(如果有我會喜歡聽到關於它的最佳選擇)。 我試圖解決的問題是:問題輸入:包 A :版本 1,依賴包 B 版本 > 1。版本 2 依賴包B版本 > 2。包 B :版本 1。版本 2 有一個打破變化。 包 C :版本 1,依賴包 B 版本 > 1。
我試圖解決的問題:我有同一個項目引用的這 3 個包。 我想將包 A 升級到版本 2。它的依賴項是包 B 版本 > 2。運行包 A 更新到版本 2(通過包管理器 UI 或控制台)會將包 B 更新到版本 2。砰! - 僅在運行時,包 C 將檢測到它缺少 B 版本 1 所需的方法!
我正在嘗試做什么- 編寫安裝過程的腳本,提示用戶輸入這些類型的依賴項。
我的問題- 為此,我想獲得一個包依賴項,但我找不到使用包管理器控制台的方法。
感謝一些幫助:)
為此,我想獲得一個包依賴項,但我找不到使用包管理器控制台執行此操作的方法。
我們不能用的NuGet管理控制台來獲取包dependencies.In除了UI觀看NuGet包的依賴關系,我們可以得到的csproj文件的依賴關系中的NuGet項目A.這是A.csproj文件中的相關內容:
<ItemGroup>
<PackageReference Include="Antlr">
<Version>3.5.0.2</Version>
</PackageReference>
<PackageReference Include="Microsoft.Extensions.Logging">
<Version>3.0.0</Version>
</PackageReference>
</ItemGroup>
另一個是您可以通過命令nuget spec
創建的nuspec文件查看包依賴nuget spec
(如果您使用 nuspec 文件強制執行依賴項),這是您在打包項目之前使用的文檔。
編寫安裝過程的腳本,提示用戶輸入這些類型的依賴項。
注意:針對你的情況,不能在同一個項目中使用兩個版本的nuget包,會造成版本沖突。
建議:
不知道為什么你升級B的時候把C需要的方法刪掉了。相應的方法。 所以你可以在包B版本二中恢復C包需要的方法。
如果你對包B version2進行了較大的改動,並且恢復方法的步驟有點復雜,建議你可以專門為C包制作一個包B的副本。 只需重命名 Package B version 1 並由 Package C 引用,以將其與 B 包的第二個版本區分開來。
希望能幫到你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.