Frage

ModelState.IsValid kehrt falsch für mich in meinem Controller. Ich weiß, dass Mittel einer oder Fehler mehr Modelle gefunden wurden, als Modell zu binden. Meine Frage ist, wie sehe ich die Fehlermeldung?

Ich hat bemerkt, dass mein besonderes Model 6 Artikel drin. Wenn ich versuche, jede dieser ...

zu tun
ModelState[0].Errors[0].ToString()
ModelState[0].Errors[0].ErrorMessage
ModelState[0].Value.AttemptedValue

ich diesen Fehler:

The best overloaded method match for 'System.Web.Mvc.ModelStateDictionary.this[string]' has some invalid arguments
War es hilfreich?

Lösung

Die Indexor in die Modelstate ist eine Zeichenfolge (in der Regel der Name der Eigenschaft des betreffenden Modells oder den Namen des HTML-Element).

Wenn Sie überprüfen Sie die MSDN-Dokumentation für die Model Klasse, werden Sie sehen, dass es eine Fehler Sammlung verfügt, die Sie iterieren über die Fehlereinträge ermöglichen (die ModelError Instanzen), um zu sehen, was sie verursacht hat.

Andere Tipps

in der Steuerung;

ModelState.AddModelError("username", "Bad username");

im Blick;

 <%= Html.ValidationMessage("username") %>

auch

<%= Html.ValidationSummary() %>

Html.ValidationSummary () könnte das sein, was Sie suchen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top