ASP.NET MVC Modell Staat
-
21-09-2019 - |
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 tunModelState[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
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.