Ich habe eine Eigenschaft in meiner PersonDTO-Klasse:
%Vor%Es funktioniert einwandfrei, außer dass ich leere Zeichenfolgen als Werte für mein Modell zulassen möchte, wenn ich JSON von der Clientseite aus sende:
%Vor% Ich habe 400 bad request
Antwort und
Es kann jedoch email
value weggelassen werden:
Ich habe es auch versucht
%Vor%aber es funktioniert nicht.
Soweit ich das verstanden habe, erlaubt Data Annotations Extensions
pack auch keine leere Zeichenkette.
Daher frage ich mich, ob es eine Möglichkeit gibt, das standardmäßige [EmailAddress]
-Attribut anzupassen, um leere Zeichenfolgen zuzulassen, so dass ich kein benutzerdefiniertes Validierungsattribut schreiben muss.
Sie haben zwei Möglichkeiten:
Beispiel:
%Vor%Erweiterung auf Option 1 (von Web Api konvertiert keine json leeren Zeichenfolgenwerte in null )
Fügen Sie diesen Konverter hinzu:
%Vor%und in der Eigenschaft verwenden:
%Vor%oder global in WebApiConfig.cs:
%Vor%Tags und Links asp.net-mvc attributes validation