ASP.NET MVC4 を使用しています。
ビューで @Html.LabelFor() を呼び出すと、正しいフィールド テキストが表示されるように、データベースから取得した他の値に基づいてプロパティの表示名を変更しようとしています。
私が取り組んでいる例では、住所の行ごとに異なるプロパティを持つ Address View Model を使用しています。住所が米国の場合、フィールドの 1 つに「都道府県」と表示されます。英国の住所の場合は、「County」と表示されます。「郵便番号」と「郵便番号」についても同様です。
明らかに、国ごとに異なるフィールドごとに異なるプロパティは必要ありません。
また、国に応じて郵便番号に異なる正規表現検証ルールを適用する方法についても説明します。どうすればこれを行うことができますか?
現時点での私のクラスは次のとおりです。
public class AddressViewModel
{
public Guid Id { get; set; }
[Display(Name = "Address_Country", ResourceType = typeof(Resources.Shared))]
[Required]
public Guid CountryId { get; set; }
[Display(Name = "Address_AddressLine1", ResourceType = typeof(Resources.Shared))]
public string AddressLine1 { get; set; }
[Display(Name = "Address_AddressLine2", ResourceType = typeof(Resources.Shared))]
public string AddressLine2 { get; set; }
[Display(Name = "Address_AddressLine3", ResourceType = typeof(Resources.Shared))]
public string AddressLine3 { get; set; }
[Display(Name = "Address_AddressLine4", ResourceType = typeof(Resources.Shared))]
public string AddressLine4 { get; set; }
[Display(Name = "Address_AddressLine5", ResourceType = typeof(Resources.Shared))]
public string AddressLine5 { get; set; }
[Display(Name = "Address_PostalCode", ResourceType = typeof(Resources.Shared))]
public string PostalCode { get; set; }
}
どんな助けでも大歓迎です。
ありがとう。