丝袜人妻一区二区三区_少妇福利无码视频_亚洲理论片在线观看_一级毛片国产A级片

當前位置:首頁 > 教育

完成packages 自動將 NuGet 包的引用方式從 packages.config 升級為 PackageReference

前一段時間,我寫了一篇關(guān)于遷移csproj格式的博客,將WPF、UWP和其他類型的舊csproj遷移到基于微軟的新csproj中。NET.Sdk,但是整個過程都是手工進行的,最后處理XAML問題還是很頭疼的。

現(xiàn)在,我們可以使用工具自動完成這個過程。當然,該工具不遷移csproj格式,而是在不遷移格式的情況下使用PackageReference模式NuGet引用。

本文內(nèi)容

自動升級檢查升級后的兼容性問題 install.ps1 腳本將失效 使用 content 方式指定的內(nèi)容資產(chǎn)將失效 XDT 變換將失效 lib 根目錄中的程序集將被忽略解決升級后的編譯錯誤 參考資料 自動升級

下載并安裝Visual Studio插件NuGet包參考升級程序。安裝完成后,再次啟動Visual Studio,即可開始遷移。

更新:遷移工具從Visual Studio 2017的15.7版開始帶入Visual Studio。有關(guān)詳細信息,請參見:從package.config遷移到包參考格式-微軟文檔。

只有一個步驟:右鍵單擊packages.config文件并選擇升級到PackageReference。

在彈出的界面中,選擇包版本,確認完成項目的遷移。

與之前編寫的手動遷移相比,自動遷移模式并沒有改變csproj的格式,只是將NuGet的引用模式改為PackageReference。要了解具體的好處,您可以閱讀關(guān)于將WPF、UWP和其他類型的舊csproj遷移到基于Microsoft.NET.Sdk的新csproj

升級后檢查兼容性問題

packages.config的NuGet包的管理模式有一些PackageReference沒有的功能。當然,這些功能不可用,是因為“不需要”,而不是“還不支持”;因此,大部分遷移都不會成為問題(除非發(fā)布包使用了特別老的nuget.exe,或者發(fā)布者使用了一些瘋狂的黑技術(shù))。

在15.7版以上的Visual Studio 2017遷移工具中,會自動列出可能存在的兼容性問題。

install.ps1腳本將無效

使用PackageReference,install.ps1腳本將不再在安裝和寫入過程中執(zhí)行。如果某些行為依賴于此腳本,則此NuGet包的行為可能不正常。

不過不用擔(dān)心!install.ps1的存在是因為packages.config不支持PackageReference中的一些新特性(比如NuGet包中的新目錄結(jié)構(gòu),比如包中的msbuild目標)。因此,如果NuGet包在發(fā)布時滿足目錄要求,即使不需要執(zhí)行install.ps1,也能保證包的正常行為。

使用Content方法指定的內(nèi)容資產(chǎn)將無效

PackageReference使用內(nèi)容文件來管理內(nèi)容資產(chǎn),這些內(nèi)容資產(chǎn)可以在多個依賴包之間更好地傳輸和共享。之前內(nèi)容指定的資產(chǎn)將無效。

建議檢查所有相關(guān)的NuGet包。如果您有權(quán)限修改某些依賴包,請使用內(nèi)容文件而不是內(nèi)容。

XDT轉(zhuǎn)型將會失敗

使用PackageReference,在安裝和寫入期間不會執(zhí)行XDT轉(zhuǎn)換。xdt文件將被忽略。

Web應(yīng)用開發(fā)中要多注意這個問題。

lib根目錄中的程序集將被忽略

lib文件夾中的程序集根據(jù)目標框架應(yīng)該是子文件夾,比如net45、netstandard2.0、netcoreapp2.0,PackageReference要求只能引用某個目標框架下的程序集。

如果默認創(chuàng)建NuGet包,基本不會遇到這樣的問題。除非您在創(chuàng)建NuGet包時有自定義操作,否則請將程序集放在根目錄中。

升級后解決編譯錯誤

最有可能的編譯問題是NuGet包引用的版本沖突。

packages.config模式中的包引用需要在csproj文件中顯式指定依賴包的版本,因此無論哪個版本用于依賴,最終都是由顯式指定的版本指定的。

PackageReference的引用模式是自動管理依賴版本。只要每個包都在允許的版本范圍內(nèi),版本就會被自動選擇并顯示在解決方案的引用中。

PackageReference依賴項沖突提示通常如下:

檢測到版本沖突。請直接從項目中引用包來解決此問題。

NuGet。包裝3 . 5 . 0->;NuGet。版本控制(= 3.5.0)

NuGet。配置4 . 0 . 0->;NuGet。版本控制(= 4.0.0)

也就是說,被引用的兩個不同的包需要同一個包的不同版本,所以PackageReference不能隱式推斷依賴包的版本。這時候就需要把項目的依賴模式改成之前的依賴模式。

當然,在制作和發(fā)布NuGet包時,要盡量使用非特定版本的依賴包,這樣可以大大避免這個問題的影響。您可以閱讀版本范圍和通配符版本范圍和通配符,了解如何指定沒有特定版本的依賴包。

參考數(shù)據(jù)

Migrating from package.config to PackageReference formats - Microsoft Docspackages.config (PC) to PackageReference (PR) Migrator · NuGet/Home Wiki

原地址:https://Walter LV . com/post/migrate-packages-config-to-package-reference . html

1.《完成packages 自動將 NuGet 包的引用方式從 packages.config 升級為 PackageReference》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識,僅代表作者本人觀點,與本網(wǎng)站無關(guān),侵刪請聯(lián)系頁腳下方聯(lián)系方式。

2.《完成packages 自動將 NuGet 包的引用方式從 packages.config 升級為 PackageReference》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。

3.文章轉(zhuǎn)載時請保留本站內(nèi)容來源地址,http://f99ss.com/jiaoyu/787947.html

上一篇

麥冬的功效與作用禁忌 麥冬泡水,對身體有5大好處,但5大禁忌要牢記

下一篇

中國有幾座核電站 2019中國核電站分布圖,截止2018年共計22座

u盤文件夾刪不掉 u盤文件刪不了怎么辦

  • u盤文件夾刪不掉 u盤文件刪不了怎么辦
  • u盤文件夾刪不掉 u盤文件刪不了怎么辦
  • u盤文件夾刪不掉 u盤文件刪不了怎么辦

u盤刪不掉 u盤文件刪不了怎么辦

  • u盤刪不掉 u盤文件刪不了怎么辦
  • u盤刪不掉 u盤文件刪不了怎么辦
  • u盤刪不掉 u盤文件刪不了怎么辦

地球公社 為什么裝配式建筑被追捧?新型建筑模式打造“地球公社”

上海光明隨心訂 上海品牌創(chuàng)新發(fā)展,光明隨心訂發(fā)力探索互聯(lián)網(wǎng)新零售模式

  • 上海光明隨心訂 上海品牌創(chuàng)新發(fā)展,光明隨心訂發(fā)力探索互聯(lián)網(wǎng)新零售模式
  • 上海光明隨心訂 上海品牌創(chuàng)新發(fā)展,光明隨心訂發(fā)力探索互聯(lián)網(wǎng)新零售模式
  • 上海光明隨心訂 上海品牌創(chuàng)新發(fā)展,光明隨心訂發(fā)力探索互聯(lián)網(wǎng)新零售模式

福建一女子家門口貼霸氣對聯(lián) 內(nèi)容曝光令人狂笑不止 網(wǎng)友:懶人必備!

  • 福建一女子家門口貼霸氣對聯(lián) 內(nèi)容曝光令人狂笑不止 網(wǎng)友:懶人必備!
  • 福建一女子家門口貼霸氣對聯(lián) 內(nèi)容曝光令人狂笑不止 網(wǎng)友:懶人必備!
  • 福建一女子家門口貼霸氣對聯(lián) 內(nèi)容曝光令人狂笑不止 網(wǎng)友:懶人必備!
抖音內(nèi)測版 抖音內(nèi)測新版本曝光:適用于PC、平板端的大屏幕刷視頻

抖音內(nèi)測版 抖音內(nèi)測新版本曝光:適用于PC、平板端的大屏幕刷視頻

知道了手機網(wǎng)的消息,顫音是目前國內(nèi)最火的短視頻娛樂應(yīng)用軟件,不僅在國內(nèi)非常流行,而且國際版的顫音TikTok也受到了國外很多網(wǎng)友的追捧。目前顫音主要集中在手機客戶端,對于人來說可以用在大屏幕產(chǎn)品上,但是適應(yīng)程度一般,體驗效果不如手機屏幕舒服。好在顫音團隊已經(jīng)開始在大...

1019 從文件到系統(tǒng)級的備份分享“全能王”,體驗群暉DS1019+

  • 1019 從文件到系統(tǒng)級的備份分享“全能王”,體驗群暉DS1019+
  • 1019 從文件到系統(tǒng)級的備份分享“全能王”,體驗群暉DS1019+
  • 1019 從文件到系統(tǒng)級的備份分享“全能王”,體驗群暉DS1019+
360yun 智造中國360云平臺: “三端一體化”的創(chuàng)新模式

360yun 智造中國360云平臺: “三端一體化”的創(chuàng)新模式

科技是綜合國力競爭的重要因素 成為國家發(fā)展過程中不可忽視的一部分 制造業(yè)是立國興國之本 在這個場合, 我們推出了“智能中國360云平臺” 為傳統(tǒng)產(chǎn)業(yè)提供 三端集成智能制造解決方案 01 關(guān)于“知識中國360” 為了給傳統(tǒng)產(chǎn)業(yè)的智能化轉(zhuǎn)型提供解決方案,滿足各產(chǎn)業(yè)智能化...