NuGet是Microsoft開發平臺的程序集包管理器,它由客戶端工具和服務端站點組成,客戶端工具提供給用戶管理和安裝/卸載軟件程序包,以及打包和發佈程序包到NuGet服務端站點等功能,服務端站點存儲已經發行的軟件包,併爲NuGet客戶端軟件包庫提供服務,使軟件包共享給其餘的開發者。css
一、打開Visual Studio建立空的Web站點,如圖:web
二、打開管理NuGet程序包,選擇程序包源爲:nuget.org 而後在搜索框中輸入:NuGet.Server,如圖:c#
固然你也能夠在程序包控制檯中輸入下面的命令直接安裝api
install-package NuGet.Server
三、安裝完成以後,打開web.confg 修改apikey 如圖:服務器
若是requireApiKey的值設置爲false,那麼apikey就能夠設置爲空,我這裏隨便搞了一個,而後服務端的站點就完成了,你能夠將這個站點部署到服務器的IIS裏面,看一下最後運行的結果:編輯器
一、首先咱們得安裝NuGet客戶端工具,個人Visual Studio 2015是自帶的(我選擇了徹底安裝模式),若是你的沒有那麼能夠到nuget上下載安裝包,安裝包的下載地址:https://www.nuget.org/工具
二、將程序集打包測試
在打包以前先要建立一個打包清單文件.nuspec, 你能夠從頭至尾手動建立打包清單,或者輸入下面的命令進行建立:ui
nuget spec
其更多選項能夠參考其官方文檔:https://docs.nuget.org/ndocs/tools/nuget.exe-cli-reference#specspa
這個命令你能夠在visual studio的程序包管理控制檯裏面執行,也能夠在cmd裏面執行,但都須要路由到須要打包的項目目錄下運行,如圖:
我先把它更名爲dogstar.nuspec,而後你能夠使用任何文本編輯器來打開這個文件,如圖:
在這裏我簡單介紹一下下面的的幾個元素,其餘更多請參照官方文檔(https://docs.nuget.org/ndocs/schema/nuspec)
id:程序包的惟一標識符
version:發行版本號
description:程序包的功能詳細說明
releaseNotes:本次發行的版本有那些主要變動,例如:修復bug,支持全文檢索
dependencies:此程序包依賴於哪些Nuget上的程序包
files:包含程序集文件和內容文件
程序集文件的目標根目錄必須是lib,如:target="lib" 或者 target="lib\net40",lib目錄下的文件將會安裝到目標項目的bin目錄下
內容文件的目標根目錄必須是content,如:target="content\scripts" 或者 target="content\theme\css",content目錄下的全部文件和文件夾都會被安裝到目標項目下的根目錄下
這裏須要提醒一下的就是路徑不能夠用「/」分隔符,必須使用「\"分隔符
exclude屬性指定不包括的文件;
關於files節點的更多內容請參照官方文檔:https://docs.nuget.org/ndocs/schema/nuspec#including-assembly-files
文件清單建立完畢以後,執行下面的命令進行打包:
nuget pack dogstar.nuspec
執行命令以後會生成一個 dogstar.1.0.0.nupkg 文件,這裏你會看到一堆的警告,其實打包還有能夠用visual studio的項目文件(*.csproj)進行打包,具體操做請參照官方文檔:https://docs.nuget.org/ndocs/create-packages/creating-a-package#creating-the-package
到此爲止打包的步驟就已經完成了,下面介紹發佈到nuget服務器上的操做
三、將nuget包發佈到服務器上
發佈的操做至關簡單,其實在前面的第二部分的Nuget服務器站點搭建完成以後運行站點後的那個效果圖裏面就已經將方法輸出來了,請看下面的命令:
nuget push dogstar.1.0.0.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -Source http://localhost:27928/api/v2/package
NuGet服務端站點和客戶端打包發佈都已經介紹玩了,如今回到nuget管理程序包裏面驗證一下結果,在驗證結果以前,首先添加程序包源的設置,如圖:
而後在程序包源的下拉中選擇client test 將會看到咱們剛剛發佈的dogstar程序包,如圖:
ok,立刻點擊安裝看一下
打包的文件已經正確安裝到測試項目裏面,驗證結果成功!