2

フォームとボタンを含むフィールドセットを表示したいとします。

I/O値用のテキストボックスと次のラベルがあります。

  1. フィールドセットのタイトル(値とは関係ありません)
  2. テキストボックス(ラベルと検証)
  3. 送信ボタン(値とは関係ありません)

ラベルは、ローカリゼーションに基づいてデータベースから提供されます。

ケース2の場合、mvcがすでにサポートしているメカニズム(DataAnnotations属性)を使用したいので、次の2つの解決策を見つけました。

ビューモデルの例は次のようになります。

Model
{
    fieldset title localized label

    [textbox localized display label]
    [textbox localized validation label]
    textbox value

    button localized label
}

ケース2のラベルは、ビューモデル値のメタデータとして指定されますが、大きなコンテンツを含むビューを考慮して、ケース1および3のデータベースからローカライズされたテキストを指定するためのエレガントで一貫した方法は何でしょうか。

4

1 に答える 1

0

解決策は、やり過ぎですが、ローカライズされたラベルごとに表示属性を持つ空のモデルメンバーを用意し、カスタムヘルパー[1]を使用してプレーンテキストを取得することです。

[1]:asp.netMVCでLabelForHelperを使用せずにDisplayName属性を取得します

于 2013-03-03T00:45:24.950 に答える