Die Validierung von Modellen in der ASP.NET-Web-API ist eine häufige Aufgabe. Die Modellvalidierung kann mithilfe der Datenanmerkungseigenschaften und der ModelState-Eigenschaft erreicht werden.
Das im Beispiel angegebene Modell definiert mehrere Eigenschaften, jede mit einem Annotationsattribut „Erforderliche Daten“, das angibt, dass das Feld erforderlich ist.
Im Beispiel wird in der Post-Aktionsmethode keine explizite Validierung für das Modell durchgeführt. Um die Modellvalidierung zu implementieren, können Sie den folgenden Code am Anfang der Methode hinzufügen:
if (!ModelState.IsValid) { // Handle validation errors }
Falls der ModelState ungültig ist, zeigt dies an, dass die Modellvalidierung fehlgeschlagen ist. An dieser Stelle können Sie die folgenden Schritte ausführen, um die Fehlermeldung zu behandeln:
Sie können den Aktionsfilter auch zur Modellüberprüfung verwenden. Ein Aktionsfilter ist ein benutzerdefiniertes Attribut, das vor oder nach der Ausführung einer API-Operation ausgeführt werden kann. Das folgende Beispiel zeigt, wie ein Aktionsfilter zur Modellvalidierung verwendet wird:
public class ValidationActionFilter : ActionFilterAttribute { public override void OnActionExecuting(HttpActionContext actionContext) { if (!actionContext.ModelState.IsValid) { actionContext.Response = actionContext.Request .CreateErrorResponse(HttpStatusCode.BadRequest, actionContext.ModelState); } } }
Durch die Anwendung dieses Aktionsfilters auf eine API-Operation wird das Modell automatisch validiert und eine entsprechende Fehlerantwort zurückgegeben, wenn der Modellstatus ungültig ist.
Das obige ist der detaillierte Inhalt vonWie handhabe ich die Modellstatusvalidierung in der ASP.NET-Web-API?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!