リソースを使用した DisplayName 属性値のローカライズ
ローカライズされた .NET アプリケーションでは、ローカライズされた .NET アプリケーションを使用してモデル プロパティの DisplayName 属性を設定することが望ましい場合があります。リソース。ただし、以下のコードに示すように、DisplayName 属性内のリソースを直接使用しようとすると、コンパイル エラーが発生します。
public class MyModel { [Required] [DisplayName(Resources.Resources.labelForName)] public string name{ get; set; } }
この制限に対処するために、MVC 3 と .NET 4 では、 System.ComponentModel.DataAnnotations 名前空間。この属性は、ローカリゼーションのサポートなどの拡張機能を提供します。これをローカライズされた DisplayName 値に利用する方法は次のとおりです。
public class MyModel { [Required] [Display(Name = "labelForName", ResourceType = typeof(Resources.Resources))] public string name{ get; set; } }
この方法では、リソース ファイルを「埋め込みリソース」として設定し、「ResXFileCodeGenerator」カスタム ツールを使用する必要があることに注意してください。カスタム ツールには制限があるため、App_GlobalResources または App_LocalResources を MVC で使用することは避けてください。
以上が.NET で DisplayName 属性値をローカライズするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。