タイトルにあるように、ASP.NET MVC 4プロジェクトにNuGetパッケージが多すぎるのはなぜですか?フレームワーク全体がパッケージに分割されましたか? Webサイトになる、APIがないなどの空のプロジェクトで本当に重要なものはどれですか。
[〜#〜]更新[〜#〜]
明確にするために、基本的な混乱を1つに数えない限り、問題はありません。新しいMVC 4プロジェクトにデフォルトで非常に多くのパッケージがインストールされている理由を知りたいだけですか?空のプロジェクトには、パッケージの1つの完全なページがあります。インターネットプロジェクトには、3つの完全なページのパッケージがあります。
私の現在のMVC 3プロジェクトは最大5つのパッケージを使用しているので、なぜこれが気になるのでしょうか。
タイトルにあるように、ASP.NET MVC 4プロジェクトにNuGetパッケージが多すぎるのはなぜですか?
これは、フレームワークの設計者に尋ねる必要がある質問です。
Webサイトになる、APIがないなどの空のプロジェクトで本当に重要なものはどれですか。
ルーティングを構成し、Razorビューをレンダリングするアクションでコントローラーを定義できるようにする厳密な最小値は次のとおりです。
<packages>
<package id="Microsoft.AspNet.Mvc" version="4.0.20710.0" targetFramework="net40" />
<package id="Microsoft.AspNet.Razor" version="2.0.20710.0" targetFramework="net40" />
<package id="Microsoft.AspNet.WebPages" version="2.0.20710.0" targetFramework="net40" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net40" />
</packages>
または、ページの半分だけを好む場合:
ASP.NET MVCは、ASP.NET MVC 3ツールの更新以降、NuGetパッケージを介して提供されることが増えています。これにはいくつかの利点があります。
基本テンプレートのプロジェクトでは、次のパッケージを取得することがわかります。
9つのうち5つは、高度にコンポーネント化されたWeb APIに使用され、開発者がそれらをどこでどのように使用できるかについて多くの柔軟性を可能にします。 NuGetパッケージを最小化する場合は、基本テンプレートを使用できます。
基本テンプレートとインターネットテンプレートに進むと、プロジェクトが提供する追加機能をサポートするためのパッケージがさらに表示されます。インターネットには、OAuthやJavaScriptライブラリなど、Microsoft以外のオープンソースコードのパッケージがいくつか含まれています。
多くのJavaScriptパッケージがあります。これは、NuGetがJavaScriptの依存関係を自動的に処理することを意味するので、考えると本当に良いことです。jQueryUIをアップグレードする場合は、jQueryの新しいバージョンが必要になり、 jQueryが自動的にアップグレードされます。