Dynamic Data アプリケーションのカスタマイズ

3 月も 3 分の 1 を過ぎたというのにぜんぜん暖かくなりませんね。 これでも桜の開花予想は例年より早いというのだから不思議です。 ・・・・。(すみません、とくにオチはありません。)   さて、今回は DynamicData で作成したアプリケーションをカスタマイズする方法について書きたいと思います。 DynamicData を使用したアプリケーションの作成方法については以下の記事に書いてますので、必要のある方はご覧ください。 【tech・Days フォローアップ】Dynamic Data について http://blogs.msdn.com/osamum/archive/2009/02/20/tech-days-dynamic-data.aspx   DynamicData アプリケーションのカスタマイズ DynamicData アプリケーションが既定で表示するのは、データベース内のテーブルの内容そのままなので、多くの場合、ユーザーに見せる情報としては適さない場合があります。 誰にだって見せたくないフィールドのひとつやふたつ、ありますよね? 他人にはもっと違うフィールド名で呼んでほしい、とか思うことがありますよね? DynamicData ではメタデータクラスを定義することでこれらの機能を実現することができます。 “メタデータクラス″、と聞くと ??? と思われるかも知れませんが、ようするにテーブルに紐付けられたクラスの partial クラスを定義して、そこに MetadataType 属性を付けるだけです。 説明を読むよりも、実際に作って動かしてみた方がよくわかると思いますので、実際に作成してみましょう。 なお、以下の手順は、この記事の内容で作成された DynamicData アプリケーションを作業対象としています。 【tech・Days フォローアップ】Dynamic Data について [作成手順] プロジェクトエクスプローラーで、プロジェクト名を右クリックし、表示されたショートカットメニューより [新しい項目の追加] を選択  [新しい項目の追加] ダイアログボックスが表示されるので、[テンプレート] リストビューより “クラス” を選択し、[名前 (N)] テキストボックスを “employee.cs”…

1

ASP.NET MVC Framework RC2 リリース

先回の記事で、”次回は Dynamic Data のカスタマイズ方法を…” と書いたのものの、ひどい風邪でふせっているうちに ASP.NET MVC Framework RC2 が本日リリースされました。 ASP.NET MVC Release Candidate 2 http://www.microsoft.com/downloads/details.aspx?FamilyID=ee4b2e97-8a72-449a-82d2-2f720d421031&displaylang=en 時間がなくてまだぜんぜん試せていませんが、Read Me 読む限りを変更点以下のような感じでしょうか。 Anti-Forgery ヘルパーの Cookie パス設定のサポート Anti-Forgery (偽造防止) cookie が “/MyApp” アプリケーションからのリクエストされることを保証するために 「/MyApp」のようなクッキー・パスをセットすることが可能に DefaultModelBinder バリデーションメッセージがローカライズ リソースファイルを使用してローカライズ可能 ValidationSummary メソッド がヘッダーメッセージのオーバーロードをサポート サマリー内のエラーメッセージリストに表示されるメッセージヘッダーをオーバーロード可能 jQuery のライブラリが Version から 1.2.6 に 1.3.1 にバージョンアップ RC1 から RC2 へのアップグレード方法 とくに変更なし。(インストール時に問題の発生する要因も同じ) 必ず RC1 をアンインストールしてから RC2 をインストールしてください その他の変更点…

0

【tech・Days フォローアップ】Dynamic Data について

先月行われた Microsoft tech・days Japan 2009 にて ASP.NET 4.0 の新機能についてセッションを行いました。 その際、.NET Framework 3.5 SP1 の機能であることと、いらっしゃったお客様が全員御存じだったことから ASP.NET Dynamic Data の紹介を割愛しましたが、念のためにここで紹介させていただきます。   ASP.NET Dynamic Data とは 簡単に言うと、データベースの閲覧/追加/編集/削除機能を持ったアプリケーションを簡単に作成するためのプロジェクトテンプレートです。 Visual Visual Studio 2008 SP1 が生成したテンプレートにデータベースを指定するだけで、ほぼ半自動でデータベースの更新機能を備えた Web アプリケーションを作成することができます。 特徴としてはこんな感じです。 Scaffolding プロパティを設定するだけで、すぐに使い始めることができる UI のテンプレートおよびページを使用し、完全にカスタマイズ可能 データ上の指定された検証規則とビジネス規則はモデル化され UI に送られる データスキーマに基づき、サイトの物理的なページ構造と離れた柔軟なURLルーティングを許可 新しいダイナミック コントロールは、並べ替え、ページング、編集およびフィルタリングといったシナリオを簡単にインプリメント 現在の .NET Framework 3.5 SP1 でも使用可能 説明だけ読んでもあまりぴんとこないと思いますので、実際に作成してみましょう。 ASP.NET Dynamic Data アプリケーションの作成は非常に簡単です。手順さえ把握してしまえばおそらく、ここまでの文章を読む時間より早くアプリケーションを作成することができるでしょう。 なお、アプリケーションの作成には…

1

MVC Framework RC 版での機能追加点(その②)

※ほんとうはタイトルを “ASP.NET MVC Framework RC 版での機能追加点(その②)” としたかったのですが、’The “Name” of a post and/or article must be unique. Your post was not saved or updated. ‘ などという原因不明のエラーが返るためにこんなタイトルに…。 ――― ・ ――― ・ ――― ・ ――― ・ ――― ・ ――― ・ ――― ・ ――― ・ ――― 先回の ASP.NET MVC Framework RC 版の変更点で書き忘れましたが、インストールについて大きな変更、というか、正しく動くようになった点があります。 それはインストール時のアイテムテンプレートの追加です。 β 版では、日本語向けにアイテムテンプレートが正しくインストールされず、1033 のフォルダの内容を、1041(日本語の LCID)という名前のフォルダを作成してコピーするという手順が必要でしたが、RC 版では当然ながらこの作業は必要なく、インストーラーの処理のみで MVC Framework を使用した開発を開始することができます。 今回も ASP.NET MVC Framework の新機能について書きますが、新機能どうしにあまり関係がないのと、機能的こまかいということもありますのでメモ程度ということで。。   既定のマスターページの<head> セクションの変更 既定のマスターページの<head> セクションに空のプレースホルダを儲けられました。 これは、<head> 内のタイトル、スタイルシート、スクリプトの制御を各々のコンテンツページからしやすいようにするためです。( ようするに、ページタイトルの変更などが今までより簡単に行うことができるようになるということです。 ) ( 既定のマスターページの <head>…

1

Visual Studio 2008 と jQuery

Visual Studio 2010 に同梱予定の jQuery ですが、ASP.NET MVC Framework には一足早く含まれています。   その前に jQuery について簡単に紹介しましょう。   jQuery とは jQuery とは 2006年初めに Mozilla Corporation のエバンジェリスト John Resig (ぢょん・れしぐ)氏によって作られた JavaScript のライブラリで、jQuery.com にて配布されているものです。 Java Script のライブラリというと prottype.js が有名ですが、jQuery はそれよりも軽く、高速に動作すると言われています。 また、ご本人がタグを書いているわけではないと思いますが、米国第 44 第大統領 バラク・オバマ氏のホームページでも jQuery が使用されています。   jQuery の特徴と利点 jQuery は “軽量で高速” といった特徴以外にも、以下のような特徴があります。 大量の繰り返しループや DOM Scripting ライブラリー・コールを作成する必要がなくなる メソッドを実行した際に返されるデータ形式が「jQueryオブジェクト」 メソッドチェーンで処理をつないで記述できる特徴を持つ MITライセンスとして配布 著作権を表示すれば商用利用、ソース改変、再配布なども可能 豊富なプラグインの追加で機能の拡張が容易 中でも特徴的なのは、DOM…

0

ASP.NET MVC Framework RC 版での機能追加点(その①)

RC 版での変更点について、実際に簡単なアプリケーションを作成しながら紹介します。 作成するアプリケーションは、DB 内のテーブルの内容をリスト表示して、選択されたレコードを別ページで詳細を表示するというものです。 SQL Server のサンプル DB を使用しますので、以下のリンクから MDF ファイルを入手しておいてください。 『Northwind and pubs Sample Databases for SQL Server 2000』http://www.microsoft.com/downloads/details.aspx?FamilyId=06616212-0356-46A0-8DA2-EEBC53A68034&displaylang=en 以下の手順に従い作業してみてください。   プロジェクトの作成 1. Visual Studio 2008 を起動し、メニュー[ファイル] – [新規作成] – [プロジェクト] を選択 2. [新しいプロジェクト] ダイアログボックスが表示されるので “ASP.NET MVC Web Application” を選択 3. [Create Unit Test Project] ダイアログボックスが表示されるので オプションボタン[Yes,create a unit test project] にチェックを付けて(※) [OK] ボタンをクリック(※)ユニットテスト用のプロジェクトを作成するか否かのダイアログボックスです。せっかくなので作っておきましょう。…

2

ASP.NET MVC Framework RC 版での変更点

先月 (2009.1) の 28 日に ASP.NET MVC Framework  のRC 版が公開されました。 今回の更新でも、さまざまな機能追加と細かな仕様の変更が行われているのですが、Bata 版から MVC Framework を使用している人たちを戸惑わせるのは、ViewPage にコードビハインドのファイルが無くなったことでしょう。 たとえば今まで、コントローラーのアクションから以下のように Generic 型のリストをビューに渡す場合 (コントローラー内のアクションメソッドでリストをビューにを渡すコード) return View(“Index”, pubs.ToList()); ビュー側では、コードビハインドのコード内で、以下のようにクラスの属性を設定していました。 (ビューのコードビハインドファイル(*.aspx.cs)内のコード) public partial class listView : ViewPage<List<Models.titles>>{ しかし、RC 版のアイテムテンプレートではコードビハインドは追加されませんので、aspx ファイル内で以下のように属性の追加を行う必要があります。 (ビューの aspx ファイルの先頭タグ) <%@ Page Language=”C#” AutoEventWireup=”true” Inherits=”ViewPage<List<MvcApplication1.Models.titles>>” %> ちなみに Bata 時代に作成したコードビハインドに関しては RC でも問題なく動作しますのでご安心を(^_^;) その他の注意点については以下のとおりです。   インストールについて Beta 版の ASP.NET MVC…

1