NuGet パッケージによる MVC 関連アセンブリの管理: ASP.NET MVC 4 新機能シリーズ

ASP.NET MVC 3 では、jQuery などの JavaScript ライブラリや Entity Framework のランタイム アセンブリなどが NuGet パッケージとして管理され、アップデートなどが容易におこなえるようになっています。

加えて ASP.NET MVC 4 からは、MVC 4 関連のアセンブリも NuGet パッケージとして管理されるようになりました。

NuGetManagement

これによって、各アセンブリのアップデートなどにも NuGet を通してプロジェクト単位で柔軟に対応出来るようになっています。

先日発表された ASP.NET MVC 関連コンポーネントのオープンソース化 (こちら のブログ記事もご参照ください) にも関連するとは思いますが、今後これらのアップデート等がどの程度の頻度でおこなわれるのか、とても興味があるところです。

◆ NuGet パッケージのリストア機能

また、ASP.NET MVC のプロジェクトをソース管理システムなどで管理する場合、これまでは NuGet で管理されるアセンブリなどのバイナリファイルも、場合によってはコミットする必要がありました(これはソース管理のリポジトリの肥大化を招くため、あまり望ましいことではありません・・・)。

そこで、ASP.NET MVC 4 では NuGet で管理されるパッケージのリストア機能に対応し、ソース管理システムへの NuGet パッケージのバイナリファイルのコミットが不要になりました。

ソリューション エクスプローラーのソリューション名上で右クリックして表示される [Enable NuGet Package Restore] メニューより、NuGet パッケージのリストア機能を有効にできます。これにより、ビルド時に不足している NuGet パッケージがあった場合に自動でダウンロードしてリストアすることが可能になります。

PackageRestore

この NuGet パッケージのリストア機能については NuGet のドキュメントもご参照ください。

Using NuGet without committing packages to source control
https://docs.nuget.org/docs/workflows/using-nuget-without-committing-packages

◆◆◆

ASP.NET MVC も、バージョンを重ねるごとにかなり “かゆいところに手が届く” フレームワークに仕上がってきました。今後の動向も楽しみですね。