今回は、ASP.NET MVC 2 が自動生成する View (Webフォーム) にて、各項目のラベル表示を変更する方法について調べてみました。

まず、View を追加するまでの方法については、MSDN の下記の記事が参考になりました。
10 行でズバリ !! ASP.NET MVC におけるデータの取得から画面表示までの流れ (C#)

上記を参考にしつつ、Azure Table ストレージに作ったテーブルに、TableServiceEntity の派生クラスを挿入するコードまでは、簡単に書く事ができました。

でも、このままだと、下記のように、変数名がそのまま表示されちゃうんですよね。

image image
こんなコードが自動生成される。 こんな感じで 変数名 が表示される。

 

解決方法としては… なんかググったら下記のプレゼンテーションがヒットしました。 (^_^;
ASP.NET MVC 2 ~新機能の紹介~
上記は 技術ひろば.net 様が公開して下さっているようです。ありがとうございました。

要するに LabelFor() の処理では 、Windows Form の PropertyGrid と同様、System.ComponentModel 名前空間にある DisplayName 属性の値を表示しているんですね。

using System.ComponentModel;
  :
[DisplayName("画像 (サムネ)")]
public string ImageSmall { get; set; }          // 画像(小)
[DisplayName("画像 (詳細)")]
public string ImageLarge { get; set; }          // 画像(大)

という訳で、表示対象のクラス定義にて、上記のように DisplayName 属性を加えてやったところ、無事に下記のような表示になりました。簡単ですねぇ。

image

通常の用途なら、このあたりで十分かもしれません。めでたし、めでたし。

ただ、多言語対応を考慮すると、下記のように DisplayAttribute の派生クラスを自前で定義するほうが良いかもしれませんね。 -> Localization of DisplayNameAttribute

さて次回は、この調子で多言語対応について調べてみたいと思います。

最近、個人的に Windows Azure で動作するサービスを書いてます。

やっぱ Azure で書くなら MVC だよね~、という訳で、これから幾つか備忘録的なポストをしていく予定です。正直、MVC も Windows Azure も実戦は初めてなんですが。

まずは、Azure 向けの開発で参考になった記事をまとめてみます。

業務システムでWindows Azureを使うための42の覚え書き
とても良記事でした。実際にサービスを稼働させる上で考慮すべきポイントが簡潔にまとまっていてすごく参考になりました。 PowerShell の専用コマンドレットを使って Windows Azure のDeployment を制御するという辺りが特に実用的でした。

PowerShell で始める Windows Azure アプリケーション管理
課金体系を考えると、Windows Azure のアプリケーション管理は切実な問題です。(現在の課金方法では、サーバーにアプリを配置しているだけで課金される)
この記事では、PowerShell を使って、開発マシンから適切に Windows Azure を管理する手法が詳細に説明されており、とても参考になりました。

コードで学ぶ Windows Azure アプリケーション開発入門
実際の開発方法については、こちらの連載が参考になりました。下位の概念についても丁寧に解説されているため、理解が深まりました。

Windows Azure ストレージによるアプリケーション エンジンの強化
実際に各種ストレージを実装する際に、とても参考になりました。この記事では Queue と Table について簡潔に解説されています。着手しているプロジェクトでは SQL は使いたくなかったので、この記事だけで用が足りてしまいました。

とりあえず、以上です。

これ意外にも、MSDN を筆頭に、とても実践的な資料が沢山公開されていますね。
書店では、さっぱり関連書籍を見かけませんが、オンライン資料は非常に充実していて驚きました。

そろそろ旬の技術、という事でしょうかね~。