使用Automatic Package Restore in Visual Studio
-
Package Restore指項目中在缺少引用包時,可以從軟件包服務器上重新下載。Nuget中Package Restore包括三種方式:
- Automatic Package Restore in Visual Studio
- Command-Line Package Restore
- MSBuild-Integrated Package Restore
推薦使用Automatic Package Restore in Visual Studio,Nuget官方文檔列舉了幾項優點,最主要的一項是這種方式讓開發者最少關注到Nuget包管理的存在,使開發者在Nuget的使用上花費最少的精力。
Automatic Package Restore in Visual Studio方式從Nuget2.7開始引入,所以需要在VS開發環境中安裝或者升級到Nuget2.7或以上版本。
-
安裝或者升級Nuget
在VS中,調用菜單Tool->Extensions and Updates,在彈出的窗口中選擇Online或者Updates菜單項中查詢Nuget Package Manager for XXX,進行安裝或者升級。 -
如何設置自動下載缺少的包?
調用菜單Tool->Options,在彈出的窗口選擇Nuget Package Manager->General項,勾選Allow NuGet to download missing packages和Automatically check for missing packages during build in Visual Studio,VS就會自動下載缺少的包。Nuget2.7安裝后,其默認是勾選的。
設置packages的路徑
Nuget上安裝的包,默認是安裝在$(Solutiondir)\packages目錄下。但是有時項目中會包含多個Solution文件,而且不再同一個文件夾。這時,就需要修改packages的路徑為同一目錄。否則,有些包會重復下載,而且如果對於在多個Solution公用的Project,很用出現找不到dll的錯誤。
設置packages的路徑需要創建一個Nuget.Config文件,並添加到Solution中。其實,存在一個默認的Nuget.Config,位於 %APPDATA%\NuGet\NuGet.Config (DOS) 或 $ENV:APPDATA\NuGet\NuGet.Config (PowerShell).
Nuget.config的內容如下
<configuration>
<config>
<add key="repositoryPath" value="C:\myteam\teampackages" />
</config>
...
</configuration>
參考:
