2

注釈ベースの検証メカニズムに加えて、EFはいわゆる「ファセット」を提供します。文字列プロパティの意味は、80文字の最大長を指定する「最大長」ファセット(EFモデル構成を介して)を持つことができます。ほとんどの場合、これはデータベースファーストアプローチを使用するときにEFによって自動的に行われます。

プロパティに指定された数を超える文字が含まれている場合、EFはメッセージとともにDbEntityValidationResultをスローします

[PropName]:フィールド[PropName]は、最大長が「80」の文字列または配列型である必要があります。

私の質問:どうすればそのようなメッセージをローカライズできますか?ドイツ語とイタリア語でも必要です...

4

1 に答える 1

1

MaartenBalliauwはそれについてブログブログを書きました:

ASP.NET MVC2DataAnnotations検証メッセージをローカライズする

通常渡すErrorMessageパラメーターの代わりにErrorMessageResourceTypeandパラメーターを使用するようにクラスを更新します。ErrorMessageResourceName

また、DisplayNameAttributesをローカライズすることもできます。これがその方法を説明するStackoverflowの投稿です:DisplayNameAttributeのローカリゼーション

アップデート

.NET Framework Language Packをインストールする場合は、これらの標準メッセージを翻訳する必要があると思います。

警告(私に起こりました):ASP.NET MVC 3のローカライズされた検証メッセージは私のマシンでは機能しますが、サーバーでは機能しません

于 2012-10-15T09:50:12.243 に答える