鍍金池/ 教程/ C#/ ASP.Net MVC NuGet包管理
ASP.Net MVC簡介
ASP.Net MVC過濾器
ASP.Net MVC視圖
ASP.Net MVC安全
ASP.Net MVC手腳架
ASP.Net MVC控制器
ASP.Net MVC與SQL Server數(shù)據(jù)庫操作
ASP.Net MVC NuGet包管理
ASP.Net MVC入門程序
ASP.Net MVC Razor
ASP.Net MVC Bootstrap
ASP.Net MVC單元測試
ASP.Net MVC動作
ASP.Net MVC模式
ASP.Net MVC選擇器
ASP.Net MVC開發(fā)環(huán)境配置
ASP.Net MVC生命周期
ASP.Net MVC模型綁定
ASP.Net MVC自托管(本地主機部署)
ASP.Net MVC驗證
ASP.Net MVC緩存
ASP.Net MVC數(shù)據(jù)模型
ASP.Net MVC路由
ASP.Net MVC教程
ASP.Net MVC助手
ASP.Net MVC數(shù)據(jù)注解
ASP.Net MVC Web API

ASP.Net MVC NuGet包管理

在本章中,我們將討論NuGet,它是.NET和Visual Studio的包管理器。 NuGet可以用來查找和安裝軟件包,也就是軟件和程序集以及想在項目中使用的東西。

NuGet不是一個特定于ASP.NET MVC項目的工具。 它是一個工具,可以在Visual Studio中使用控制臺應(yīng)用程序,WPF應(yīng)用程序,Azure應(yīng)用程序以及任何類型的應(yīng)用程序。

包管理

NuGet是一個軟件包管理器,負責在系統(tǒng)中下載,安裝,更新和配置軟件。 從術(shù)語軟件來說,我們并不是指像Microsoft Word或Notepad 2等最終用戶軟件,而是在項目中使用的軟件,程序集引用。

例如,想要使用的程序集可能是模擬的,模擬對象單元測試,NHibernate的數(shù)據(jù)訪問,以及在構(gòu)建應(yīng)用程序時使用的組件。 上述組件是開源軟件,但是發(fā)現(xiàn)一些NuGet 軟件包是封閉源碼軟件。您會發(fā)現(xiàn)一些軟件包甚至是由微軟生產(chǎn)的。

如上面提到的所有軟件包(如mockNHibernate)和Microsoft軟件包(如Entity Framework的預(yù)覽版)在默認情況下它們不包含在Visual Studio中。

不使用NuGet

要在沒有NuGet的情況下安裝這些組件,您將需要經(jīng)過以下步驟。

如果想使用某一個組件,首先需要找到一些特定項目(組件)的主頁,并尋找下載鏈接。 然后項目(組件)下載完成后,它通常是一個ZIP格式,所以需要解壓提取它。

如果沒有下載二進制文件,那么首先需要構(gòu)建該軟件,然后在您的項目中引用它。而且這個時候的許多組件還需要一些配置來啟動和運行。

使用NuGet

NuGet取代了前面討論過的所有步驟,只需要“添加軟件包”即可。 NuGet知道如何下載最新版本,知道如何提取它,如何建立對該組件的引用,甚至配置它。 這讓您有更多時間來構(gòu)建和開發(fā)軟件代碼。

下面來看一個簡單的例子,我們將使用NuGet在ASP.NET MVC項目中添加對Entity框架的支持。

第1步 - 安裝實體框架(Entity Framework)。 右鍵單擊該項目,然后選擇管理NuGet程序包 -> NuGet包管理器 以獲得解決方案…,它將打開NuGet包管理器

第2步 - 在搜索框中搜索實體框架 - Entity Framework ,結(jié)果如下-

第3步 - 選擇實體框架(Entity Framework),然后點擊“安裝”按鈕。 它將打開預(yù)覽對話框。

接受協(xié)議,如下圖所示 -

第4步 - 點擊“我接受”按鈕開始安裝。

當安裝了實體框架,將看到如上所示的消息。

當使用NuGet安裝軟件包時,會在托管項目的解決方案文件所在的文件夾中看到新的軟件包目錄。此軟件包目錄包含為該解決方案中的任何項目安裝的所有軟件包。

換句話說,NuGet不會將軟件包下載到中央位置,而是將其存儲在每個解決方案之中。