电竞比分网-中国电竞赛事及体育赛事平台

分享

NuGet的簡單使用

 地質(zhì)博士 2019-01-25

什么是NuGet?

NuGet(讀作New Get)是用于微軟.NET開發(fā)平臺的軟件包管理器,是一個(gè)Visual Studio的擴(kuò)展。在使用Visual Studio開發(fā)基于.NET Framework的應(yīng)用時(shí),NuGet能夠令你在項(xiàng)目中添加、移除和更新引用的工作變得更加快捷方便。 通過NuGet你可以很容易的訪問到其他開發(fā)者發(fā)布的軟件包,你也可以創(chuàng)建、分享或者發(fā)布自己的包到NuGet。微軟的EntityFramework、ASP.NET MVC等或者一些常用到的第三方軟件包:Json.NET、NUnit等都托管到NuGet上。

為什么要用NuGet?

上面說道NuGet實(shí)際上就是一個(gè)軟件包的托管平臺。用過VS的人可能都知道一個(gè)叫做VisualStudioGallery的網(wǎng)站,通過這個(gè)網(wǎng)站你可以下載使用一些VS的擴(kuò)展工具、項(xiàng)目模板或者一些常用的軟件包,VS中也提供了一個(gè)叫做“擴(kuò)展和更新”的工具能夠讓你輕松的訪問到VisualStudioGallery中的內(nèi)容。
那么NuGet和VisualStudioGallery有什么區(qū)別?我們?yōu)槭裁匆肗uGet?

  • NuGet和VisualStudioGallery的區(qū)別

    首先NuGet是VS的一個(gè)擴(kuò)展,而VisualStudioGallery是VS擴(kuò)展的一個(gè)托管平臺,所以NuGet是包含在VisualStudioGallery內(nèi)的,其次NuGet和VisualStudioGallery的關(guān)注點(diǎn)不同,VisualStudioGallery主要是服務(wù)于VS為VS提供插件托管服務(wù)的平臺,
    而NuGet是.NET軟件包的管理平臺,是為我們項(xiàng)目中使用的軟件包提供托管服務(wù)的。在項(xiàng)目開發(fā)中難免會(huì)引用一些其他人開發(fā)的類庫,NuGet就是為了方便我們引用各種類庫而存在的。

  • 為什么要用NuGet?

    一個(gè)大的項(xiàng)目不可能所有的功能都要自己去實(shí)現(xiàn),有句話說的好:“不要輕易造輪子”,最簡單直接的辦法就是使用別人造好的“輪子”。通常引用一個(gè)類庫到我們的項(xiàng)目中要先下載或找到類庫,然后復(fù)制到項(xiàng)目目錄,最后添加引用。
    如果我們引用的類庫有更新的版本并且我們想使用的話又要重新添加引用,一兩個(gè)倒還好,如果引用數(shù)量較多的話重復(fù)添加引用是比較麻煩和枯燥的,并且要卸載引用的時(shí)候還是要經(jīng)過幾個(gè)步驟。
    這也就是為什么推薦使用NuGet的原因,NuGet能夠讓我們輕松的實(shí)現(xiàn)對軟件包的引用、更新和卸載。

NuGet怎么使用?

前面已經(jīng)說了什么是NuGet以及我們?yōu)槭裁匆肗uGet,接下來我就通過一個(gè)簡單的控制臺程序來說說怎么用NuGet。

  • 1.安裝NuGet

    你可以從VS的擴(kuò)展和更新中安裝NuGet。

    GetNuGet

    或者從NuGet官方下載安裝包。

    DownloadNuGet

  • 2.使用NuGet可視化管理器

    通過可視化的NuGet管理器你可以瀏覽當(dāng)前項(xiàng)目已經(jīng)安裝的包或者瀏覽、搜索其他的包。

    OpenUIManager

    UIManager

    我們選中Newtonsoft.Json,在右側(cè)就會(huì)出現(xiàn)Newtonsoft.Json的詳細(xì)信息,選中要將Newtonsoft.Json下載到的項(xiàng)目,然后點(diǎn)擊安裝。NuGet會(huì)在解決方案目錄下創(chuàng)建packages目錄并將包下載到該目錄
    下載完成后VS會(huì)自動(dòng)將Newtonsoft.Json添加到我們的引用。

    InstallNewtonsoft.Json

    PackagesFolder

    通過這個(gè)管理器你可以方便的對你引用的包進(jìn)行可視化管理。

    ViewUIManager

  • 3.使用NuGet控制臺管理器

    除了可視化的管理器外NuGet也為我們提供了一個(gè)控制臺應(yīng)用,通常我更喜歡使用控制臺管理器,因?yàn)槭褂煤唵蔚拿钗揖湍軐ΠM(jìn)行管理。
    打開NuGet控制臺管理器。

    OpenConsoleManager

    通過 Install-Package “包名” 這個(gè)命令我們就能完成對Newtonsoft.Json這個(gè)包的引用。

    ConsoleManager

    除此之外還可以通過 get-help NuGet 來獲取其他命令的信息。

    NuGetCommands

    Get-Package:獲取當(dāng)前已經(jīng)安裝的包
    UnInstall-Package:卸載某個(gè)包
    Update-Package:升級某個(gè)包
    等常用命令,更多命令以及NuGet的詳細(xì)內(nèi)容可以查看NuGet官方文檔

總結(jié)

NuGet的存在使得我們不需要過多的去考慮引用軟件包方面的各種問題,我們只需要記住幾個(gè)簡單的命令就能輕松的實(shí)現(xiàn)對軟件包引用。但它的作用不僅于此,你還可以創(chuàng)建自己的軟件包并發(fā)布到NuGet上
供他人使用,你也可以搭建自己的服務(wù)器來托管你的軟件包,這個(gè)對于大公司來說很實(shí)用,可以將內(nèi)部開發(fā)的軟件包統(tǒng)一托管起來,并且方便使用。后面我會(huì)繼續(xù)深入的分析NuGet的使用。

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多