自ASP.NET MVC 3工具更新以來,ASP.NET MVC已經越來越多地通過NuGet包提供。這有幾個優點:
- 升級到通過的NuGet交付組件 - MVC本身和其他相關部件(刀片,網絡API),而無需等待任何ASP.NET MVC,.NET的一個新的「大」的發佈,或Visual Studio。
- 這也意味着您可以在MVC之外使用單個部件 - 例如,Web API可以在ASP.NET之外使用。
- 越來越多的組件正在UI層和ASP.NET的其他部分之間共享。一些示例:路由與Web窗體和Web頁面共享,Razor與Web頁面共享,新的OAuth部分與Web窗體共享。
你會發現,從基本模板的項目,你會得到以下軟件包:
- Microsoft.AspNet.Mvc
- Microsoft.AspNet.Razor
- 微軟.AspNet.WebApi
- Microsoft.AspNet.WebApi.Client
- Microsoft.AspNet.WebApi.Core
- Microsoft.AspNet.WebApi.WebHost
- Microsoft.AspNet。網頁
- Microsoft.Net.Http
- Microsoft.Web.Infrastructure
- Newtonsoft.Json
九五是用於Web API,它一直高度組件允許開發了很多他們在哪裏以及如何使用他們的靈活性。如果你想最小化你的NuGet包,你可以使用基本模板。
隨着您進入基本和互聯網模板,您將看到更多的軟件包以支持項目提供的附加功能。互聯網帶來了幾種開放源碼的非Microsoft代碼包,如OAuth和JavaScript庫。
有很多JavaScript包,當你考慮它的時候這是一件非常好的事情,因爲這意味着NuGet會自動爲你處理JavaScript依賴關係 - 如果你想升級jQueryUI,而這需要一個新版本的jQuery,它會自動爲你升級jQuery。
我很好奇,爲什麼有很多NuGet包的問題?你想解決什麼問題? – neontapir 2012-08-16 22:13:13
我沒有說有問題。我只是簡單地安裝了MVC 4並創建了一個新項目,並探討了哪些不同。一個空白的項目有一個頁面包裝完整,而互聯網項目有三個完整的包裝頁面。我只是想知道爲什麼這是因爲我的MVC 3項目最多使用了大約五個軟件包。只是好奇。 – Gup3rSuR4c 2012-08-16 22:17:27
我問過這個問題,因爲它可能會使您收到的回覆變爲顏色。 http://programmers.stackexchange.com上的 – neontapir 2012-08-16 22:18:14