2012-02-25 9 views
1

私は私の部分的なビュー "連絡先"を強く入力するために使用する連絡先viewmodelを持っています。私のフォームの1つでは、2つのエリアに対して同じContactビューを使用する必要がありました。顧客とベンダー。同じビューモデル違うerrormessage asp .net mvc?

2つの異なるエラーメッセージを表示する方法はありますか?「お客様」の名前を入力してください。同じベンダーモデルの名前を入力してください。同じビューモデルを使用していますか?

は、今では「名前を入力してください」の一般的なエラーメッセージを示し(必要な属性のエラーメッセージに指定されているものです)。

ご意見やご提案は大変ありがとうございます。

TIA。

よろしく、

ラジャ

答えて

3

ここで最高のパターンは、第2のビューモデルを作成することですが、彼らは実際には2つの異なる目的を果たす場合は、単純にコードを保存しようとしません。

2番目のオプションは、あなたのモデルがIValidateableObjectインターフェイスを実装し、フィールドが単にModelState.AddModelErrorsを使用しないで検出した場合に第三の選択肢は、あなたのコントローラである

必要に応じて、このカスタムメッセージを追加しています。必要なフィールドではないようにして、存在するかどうか、またはモデルステートのエラーがあるかどうかを確認して、そこにあるかどうかを確認し、更新されたテキストでそれを再追加することができます。

+0

オプション1の+1。 –

+0

アダムに感謝します。今私は大きな変化を遂げることのできない段階にいる。私はすでに3番目の選択肢に取り組んでいますが、先に進めないうちに別の方法があるかどうかを確かめたいと思っていました。 – Raja