欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

VS Nuget的使用實(shí)踐

 更新時(shí)間:2021年09月14日 10:20:58   作者:數(shù)據(jù)的流  
Nuget是一個(gè)VS的擴(kuò)展插件。我們?cè)谑褂肰S開發(fā)時(shí),Nuget能把在項(xiàng)目中添加、移除和更新引用的工作變得更加快捷方便,感興趣的可以了解一下

一、引言

最古老的時(shí)候我們想引用一個(gè)第三方類庫(kù),方法就是先下載第三方的dll文件,然后放置到我們的項(xiàng)目中,然后添加引用來(lái)引用這些dll,這種方法有各種的不便,比如引用dll的版本不一致,或者dll忘記放到項(xiàng)目目錄提交等等,使用過老版本VS的應(yīng)該都深有體會(huì),nuget就是為了解決類庫(kù)引用的痛楚而出現(xiàn)的。

二、認(rèn)識(shí)Nuget

Nuget是一個(gè)VS的擴(kuò)展插件。我們?cè)谑褂肰S開發(fā)時(shí),Nuget能把在項(xiàng)目中添加、移除和更新引用的工作變得更加快捷方便。

我們可以通過VS菜單上的“工具→擴(kuò)展和更新”來(lái)查看Nuget

三、如何使用Nuget

1.常規(guī)使用

在解決方案管理器中,我們可以通過“右鍵子項(xiàng)目→管理Nuget程序包”或“右鍵子項(xiàng)目下的引用→管理Nuget程序包”來(lái)對(duì)該子項(xiàng)目的引用進(jìn)行管理

在打開的“管理Nuget程序包”窗口中我們可以對(duì)該子項(xiàng)目引用的類庫(kù)進(jìn)行管理

2.安裝類庫(kù)的歷史版本

nuget中搜索到的,一般都是該類庫(kù)最新版本的,在使用過程中,我們可能需要去下載類庫(kù)的歷史版本,打開nuget官網(wǎng):

https://www.nuget.org/

輸入要安裝的類庫(kù)關(guān)鍵詞,比如我要安裝EF的6.0.2版本,直接搜索EF即可

第一個(gè)即我們想要的,點(diǎn)擊進(jìn)入詳情

這里我們能看到該類庫(kù)對(duì)其他類庫(kù)是否有依賴,以及類庫(kù)的各個(gè)歷史版本。安裝類庫(kù)的歷史版本就需要用到“程序包管理控制臺(tái)”了,可以從菜單“工具→Nuget包管理器→程序包管理控制臺(tái)”打開

偶爾有碰到程序包管理控制臺(tái)打開失敗的情況,現(xiàn)象是打開了這個(gè)窗口,但是里邊是一片空白,后來(lái)查詢了下資料VS的Nuget包管理器是依賴于Windows操作系統(tǒng)的PowerShell的,從開始菜單打開一次PowerShell,然后在VS里重新打開程序包管理控制臺(tái)問題就解決了。

接下來(lái)比如我們要安裝EF的6.0.2版本,在nuget官網(wǎng)上從EF的歷史版本中找到6.0.2,點(diǎn)進(jìn)去就可以看到安裝命令

確保你要安裝的子項(xiàng)目沒選錯(cuò),然后將命令粘貼到這里回車執(zhí)行,沒有錯(cuò)誤提示就說(shuō)明安裝成功了。

3.常見問題

Nuget安裝時(shí)會(huì)自動(dòng)下載類庫(kù)相關(guān)dll,存放路徑為解決方案目錄下package文件夾,因?yàn)閜ackage文件會(huì)比較大,實(shí)際開發(fā)中一般不會(huì)隨源碼一塊提交到svn或者git,所以從svn或者git拉取源碼以后,第一次生成時(shí)Nuget會(huì)自動(dòng)還原項(xiàng)目中引用的類庫(kù)。偶有還原失敗的情況,可以手動(dòng)還原重試,方法是:右鍵解決方案→啟用Nuget程序包還原

如果Nuget包還原失敗或者無(wú)法搜索在線類庫(kù),請(qǐng)檢查Nuget源是否可用,可以嘗試配置DNS為百度開放DNS:180.76.76.76,或者114.114.114.114,以及檢查自己電腦否使用了Http代理,瀏覽器翻(科)墻(學(xué))插件,VPN等,如果有代理可以關(guān)閉/停用了代理以后重試。

Nuget還原實(shí)際使用中還碰到了部分解決方案包還原失敗的情況,即還原成功以后,在“解決方案管理器”中展開子項(xiàng)目的“引用文件夾”有黃色嘆號(hào)出現(xiàn),此時(shí)可以在程序包管理控制臺(tái)中使用如下命令重新安裝改子項(xiàng)目的包:

Update-Package -reinstall -ProjectName 項(xiàng)目名稱

如,重新安裝Model項(xiàng)目的包:

Update-Package -reinstall -ProjectName BookShop.Model

命令:Update-Package -reinstall可以重新安裝解決方案下的所有包,但是這里不建議使用,因?yàn)楸豢舆^一次,重新安裝解決方案的所有包耗時(shí)非常長(zhǎng),也沒有執(zhí)行的必要性。

在實(shí)際使用中,如果我們要搭建2個(gè)框架相似的項(xiàng)目,假設(shè)其中一個(gè)已經(jīng)搭建好了,那么另外一個(gè)項(xiàng)目就不需要用nuget管理器界面再重新把所有的引用再次搜索添加一遍了,只需要把對(duì)應(yīng)子項(xiàng)目下的packages.config文件復(fù)制過來(lái),執(zhí)行nuget還原命令即可。

部分類庫(kù)的nuget包的安裝以后不會(huì)在項(xiàng)目引用目錄下自動(dòng)添加對(duì)相應(yīng)dll的引用,比如mysql相關(guān)的MySql.Data、MySql.Data.Entity,此時(shí)手動(dòng)添加引用即可(右鍵解決方案→添加引用→程序集→擴(kuò)展中找到添加即可)

4.離線安裝nuget包

在某些環(huán)境下我們可能需要離線安裝nuget包(比如開發(fā)用的電腦無(wú)法直接聯(lián)網(wǎng))。

首先,我們需要去nuget官網(wǎng)下載好需要安裝的nuget包(即.nupkg后綴的文件,需要注意的是離線安裝模式依賴項(xiàng)需要手動(dòng)下載安裝)

nuget包下載

其次,添加nuget離線源,通過菜單“工具→Nuget包管理器→程序包管理器設(shè)置”打開nuget包管理器配置。

點(diǎn)擊右上角的添加按鈕,填寫自定義的源名稱和地址路徑,可以配置任意的文件夾,將下載好的.nupkg包文件放入該文件夾即可。

然后我們?cè)趎uget包管理器中源選擇我們創(chuàng)建的離線源就可以看到我們剛才放進(jìn)去的離線包了

接下來(lái)安裝即可,需要注意的是離線安裝可能會(huì)提示依賴問題,需要手動(dòng)安裝依賴后才能安裝成功

到此這篇關(guān)于VS Nuget的使用實(shí)踐的文章就介紹到這了,更多相關(guān)VS Nuget使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論