「Entity Framework でのデータ アノテーション検証コントロールの使用」 何のこっちゃ
ASP.NET MVC をはじめ、ここのところのマイクロソフトは、「普通のWeb」を作るためのツールやその機能強化に力を入れているのがひしひしと感じます。
ふとMSDNのページなどを見ていると、Webプラットフォーム専用のページができており、ドメインも、microsoft.com/web/ というディレクトリが切られているほどの力の入れようです(前からでしたっけ)。
私はもともとデザイン系のWebの仕事を長くやっていたせいもあり、正直なところASP.NET の得意としてきたWeb Formの開発が苦手です。
もっと大げさに言えば、いわゆる
生理的に無理
というやつで(あ、これは完全に趣味の問題で、機能的にどうこうってものではありません)、今までは、ASP.NETのベストプラクティスをかなり無視した開発をWebでやってきました。
まあ、自分が書いていないコード(タグ)が出力されるという現象は、「普通のWeb」の世界ではかなり???なことですから・・・。
ということで、ASP.NET MVCが登場したころから、すっかりMVCに移行してたのですが、なにしろMVCは歴史が浅いため、「うーん」と思うことも多々ありました。VisualStudio 2010から(というより.NET Framwork 4.0と言った方がいいのでしょうか)、MVC 2.0が標準装備され、さらにJQueryとの統合も進み、その完成度には満足しております。
おススメです。皆さんもどうぞ。
MVC 2.0 のお気に入りの一つに、Validationがあります。コードの中にいちいち検証用のロジックを書かなくても、データモデルオブジェクトにDataAnnotation機能を利用して、ルールを記述すれば、そのデータを使うあらゆる場所で自動的に検証してくれます。さらに、数行のコードを書くだけで、サーバサイドだけじゃなく、クライアントサイドでも検証してくれます。
で、その手法はいろいろなところに紹介されているのですが、0からデータクラスをコーディングしたパターンのものが多く、多くの人が利用するであろうORMマッピングにGUIツール(VisualStudio)というか、大体の場合Entity Frameworkを使った場合の手法があまりというか、ぜんぜん見つかりません。
ScottGuのブログの日本語化版にもこの件が言及されているのですが、肝心な個所になると「ごにょごにょ」という感じなので、ちょっと調べてみところ、
珍しく(失礼)、マイクロソフトのサイトにいいサンプルがありました。
ここです。
なんと、タイトルも「Entity Framework でのデータ アノテーション検証コントロールの使用」となっているではありませんか。
そういえば、マニュアル系も以前に比べれば有益なものが増えてきている気がします。