BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース ASP.NET MVC 3のGo-Liveライセンス

ASP.NET MVC 3のGo-Liveライセンス

原文(投稿日:2010/10/12)へのリンク

マイクロソフトのASP.NETチームは、アジャイルの原理により早く、頻繁なデプロイを採用した。ASP.NET MVC 2に引き続き、バージョン3ベータの製品利用が承認された。Razor記法を含めた多くの約束された機能が提供され、見逃すことができないリリースとなっている。

Razorについては、ASP.NET MVCの4つのビューエンジンのひとつとして、以前紹介している。このリリースでは、C#版のRazorVB版のRazorにも拡張されている。両方のバージョンのRazorは、確実に以前の<%記法よりよくなっており、どちらの言語も親言語から持ち込まれている。

ASP.NET MVCは、バリデーションモデルを変更している。バージョン2では、フォーム単位で危険を含む可能性があるユーザの入力内容を拒否するか受け入れるかを選択した。バージョン3では、フィールドごとに入力バリデーションのオン・オフを切り替えられるようになった。

依存性注入(dependency injection)を重視している。IControllerActivator、IDependencyResolver、IViewActivatorという3つの新しいインターフェイスが紹介されている。依存を解決するために、モデルバインダと同様にインジェクションモデルのバリデーション、メタデータ、バリュープロバイダを使用することができる。目標は、マイクロソフトがさらなる柔軟性を提供するだけでなく、開発者が実際にすべての基盤を切り替えることができるようにすることである。

たったひとつの意図的に互換性をなくした箇所があるため、バージョン1から2のアップグレードのようにはいかない。例外フィルタと同じOrder値を持つコントローラがあった場合、そちらが採用されていた。以前とは違い、より明確に例外フィルタが適用されるようになった。もちろん、それぞれのコントローラと例外フィルタが重複のないOrder値を持つことが現在も推奨されている。

ASP.NET MVC 3は、バージョン1、2とサイドバイサイドで実行される。開発者は、既存のプロジェクトをアップグレードしたい場合、リリースノートの説明に従わなくてはならない。前述の通り、このベータは「Go Live」ライセンスにより製品利用することが承認されている。しかし、これはベータのため、現在と最終リリースの間で変更されることがある。既存の問題として、Razorのインテリセンスは現在動作していない。また、強く型付けされたビューに配列を使用することができない。

この記事に星をつける

おすすめ度
スタイル

BT