[Visual Studio]NuGet01-建立私有的NuGet server

前言

在團隊開發的過程中,會將一些共用的程式碼寫成類別庫專案開發成套件,供其他專案使用,如果都是在同一個解決方案下,利用專案參考很容易引用,但如果是其他專案需要引用,就要建置一個版本後用複製的方式給其他專案,使用上是比較不方便的,況且如果有更新版本,在佈署更新版時也會不太方便,這時候就可以利用建立私有的NuGet server來達到佈署自己開發的套件。

本文範例使用Visual Studio 2017

建立Web應用程式專案

開啟Visual Studio ,新增專案,選擇Web應用程式專案

專案範本選擇空白即可

安裝NuGet Server套件

從NuGet上安裝NuGet Server,我選擇舊版的套件,因為他相依的套件比較少,但主要功能是一樣的,讀者也可以選擇最新版安裝

順利執行完成的話會如下圖

設定NuGet Server Api key

NuGet Server可以設定一個認證的api key,以防讓沒有經過認證的套件上到NuGet Server

在Web.config中找到<add key="requireApiKey" value="true" />,確認值為true,代表有開啟需要認證apikey
找到<add key="apiKey" value="" />這個設定,value可以填入自己產生的key,在這邊我用Guid產生一組新的驗證碼

佈署至遠端IIS

接著將專案佈署至遠端IIS站台,完成後如下圖

點選here,會列出目前站台上的套件列表,如果在這邊有發現Access Deny之類的錯誤,請先確定IIS站台的User安全性有開啟允許寫入

到這邊就已經完成建置私有NuGet Server了,接下來介紹如何將寫好的程式碼透過套件的方式發布到NuGet server,給其他專案引用參考