- .NET安全攻防指南(上冊)
- 李寅 莫書棋
- 606字
- 2025-06-11 10:22:16
1.1.6 NuGet包管理器
NuGet是由微軟開發團隊與.NET生態伙伴協力開發的程序安裝平臺,目的是簡化安裝第三方程序的過程。創建者可以通過將第三方程序打包發布到公有主機上供其他消費者使用,大大提高創建.NET應用的效率。NuGet平臺與應用之間的關系如圖1-37所示。

圖1-37 NuGet平臺與應用之間的關系
1.在線安裝包
右擊項目,選擇“管理NuGet程序包”,然后在左側選擇“瀏覽”選項,輸入Newtonsoft,搜索結果會出現于下方,單擊進行安裝,如圖1-38所示。

圖1-38 Visual Studio使用NuGet包管理器
安裝完成后,程序會自動設置所需的配置,打開packages.config文件可以看到與Newtonsoft.Json相關的設置都已經加入,如圖1-39所示。
從以上步驟可以看到,使用NuGet安裝第三方程序是非常簡單的,而NuGet經過多年的發展,現已收錄超過25000個程序包,因此想要程序,通常只需打開NuGet搜索一下即可。

圖1-39 packages.config包含項目引用的包信息
2.導入本地包
NuGet包除了使用在線安裝方式外,也支持引入本地的包。比如ysoserial.net項目包含大量存在漏洞的開源組件包,我們在使用時可直接引入,無須再從官方尋找漏洞版本,如圖1-40所示。

圖1-40 ysoserial.net包含的第三方包
下面以SharpSerializer 3.0.1為例演示如何從本地導入NuGet包文件。首先打開Visual Studio找到NuGet包管理器,單擊右側設置按鈕添加程序包源,新增一個包源,默認名為Package source。選中新增包源后單擊
按鈕,瀏覽選擇文件夾SharpSerializer.3.0.1,再單擊“確定”按鈕,這里可以修改這個程序包源的名稱以便于區分,如圖1-41所示。
回到NuGet主界面,在右側“程序包源”處選擇剛添加的Package source,即可顯示引入的SharpSerializer包,如圖1-42所示。

圖1-41 NuGet管理器更新本地包

圖1-42 NuGet管理器引入本地包