データモデルの国際化対応
defaultのErrorMessageの無効化
CustomValidationの国際化対応→今後の課題
リスト10-32
<Display(Name:="Name", ResourceType:=GetType(ModelResource))>
<Required(ErrorMessageResourceName:="Required", ErrorMessageResourceType:=GetType(ModelResourceError))>
<RegularExpression("[^a-zA-Z0-9]*", ErrorMessageResourceName:="RegularExpression", ErrorMessageResourceType:=GetType(ModelResourceError))>
Public Property Name As String
<Display(Name:="Email", ResourceType:=GetType(ModelResource))>
<EmailAddress(ErrorMessageResourceName:="EmailExpression", ErrorMessageResourceType:=GetType(ModelResourceError), ErrorMessage:=Nothing)>
Public Property Email As String
<Display(Name:="EmailConfirmed", ResourceType:=GetType(ModelResource))>
<NotMapped>
<Compare("Email", ErrorMessageResourceName:="MissMatch", ErrorMessageResourceType:=GetType(ModelResourceError))>
Public Property EmailConfirmed As String
<Display(Name:="Birth", ResourceType:=GetType(ModelResource))>
<Required(ErrorMessageResourceName:="Required", ErrorMessageResourceType:=GetType(ModelResourceError))>
Public Property Birth As DateTime
<Display(Name:="Married", ResourceType:=GetType(ModelResource))>
Public Property Married As Boolean
<Display(Name:="Memo", ResourceType:=GetType(ModelResource))>
<StringLength(100, ErrorMessageResourceName:="StringLength", ErrorMessageResourceType:=GetType(ModelResourceError))>
<Blackword("違法,麻薬,毒")>
<AllowHtml>
Public Property Memo As String
・・・中略・・・
ModelResourceError.resx
名前 値
EmailExpression Please enter in Email style.
MissMatch It does not match with {1}.
RegularExpression Please do not include alphanumeric characters {0}.
Required {0} is required.
StringLength Please enter {0} no more than {1} characters.
ModelResourceError.ja.resx
名前 値
EmailExpression メールアドレスの形式で入力してください。
MissMatch {1}と一致していません。
RegularExpression {0}には半角英数字を含めないでください。
Required {0}は必須です。
StringLength {0}は{1}文字以内で入力してください。