私は完全にローカライズされたウェブサイトを持っています。それは主にフランス語/英語/ドイツ語です。
今のところ、すべてが順調に進んでいますが、asp.netMVCのエラーメッセージに問題があることに気づきました。
モデルに1つのプロパティがあります。
[Required]
[LocalizedDisplayName("PublicationDate", NameResourceType = typeof(LocalizationResources.Views.Composer.BaseInfoForm))]
public DateTime PublicationDate { get; set; }
LocalizedDisplaynameはDisplayNameAttributeの拡張であり、Resxファイルに入力して正しい翻訳を取得します
スレッドCurrentCultureとCurrentCultureUIはfr-FRであるため、メッセージはフランス語で表示する必要があります(私の[Required]
属性の場合と同様に、「Le champPublicationestrequis」を自動的に表示します。
しかし、DateTimeの場合、日付ではないものを入力すると、バリデーターは単に「The value 'asdfasdf' is not valid for Publication.
」を返します。
- MVCがフランス語で、場合によっては英語で同じ形式のエラーメッセージを返す理由(正確には、これがデフォルトのエラーメッセージです)
- 「Lavaleur{0}n'est pas une date valide pour le champ {1}」のようなテキストを指定して、このメッセージを一般的に置き換える方法
どうもありがとうございます