Heim > Backend-Entwicklung > C++ > Wie implementiert man die Modellvalidierung effektiv in der ASP.NET-Web-API?

Wie implementiert man die Modellvalidierung effektiv in der ASP.NET-Web-API?

Mary-Kate Olsen
Freigeben: 2025-01-03 06:54:39
Original
769 Leute haben es durchsucht

How to Effectively Implement Model Validation in ASP.NET Web API?

Modellvalidierung in der ASP.NET-Web-API

Die Modellvalidierung ist ein entscheidender Aspekt bei der Entwicklung einer robusten Web-API. Die ASP.NET-Web-API bietet ein umfassendes System zur Validierung eingehender Modelldaten.

Implementieren der Modellvalidierung

Um die Modellvalidierung zu implementieren, befolgen Sie diese Schritte:

  1. Modellvalidierung aktivieren: Aktivieren Sie die automatische Validierung in Ihrer Web-API Konfiguration:

    config.Filters.Add(new ValidateModelFilter());
    Nach dem Login kopieren
  2. Kommentieren Sie Ihr Modell: Verwenden Sie Datenanmerkungen, um Validierungsregeln für Ihre Modelleigenschaften anzugeben. Beispiel:

    public class Enquiry
    {
        [Key]
        public int EnquiryId { get; set; }
        [Required]
        public DateTime EnquiryDate { get; set; }
        [Required]
        public string CustomerAccountNumber { get; set; }
        [Required]
        public string ContactName { get; set; }
    }
    Nach dem Login kopieren
  3. Verwenden Sie einen benutzerdefinierten Aktionsfilter: Erstellen Sie einen benutzerdefinierten Aktionsfilter, um Modellvalidierungsfehler zu behandeln. Registrieren Sie diesen Filter global oder auf Controller-Ebene:

    public class ValidationActionFilter : ActionFilterAttribute
    {
        public override void OnActionExecuting(HttpActionContext actionContext)
        {
            var modelState = actionContext.ModelState;
    
            if (!modelState.IsValid)
                actionContext.Response = actionContext.Request
                     .CreateErrorResponse(HttpStatusCode.BadRequest, modelState);
        }
    }
    Nach dem Login kopieren

Umgang mit Validierungsfehlern

Wenn eine Modellvalidierung fehlschlägt:

  • Die ModelState-Eigenschaft des HttpActionContext enthält eine Validierungsliste Fehler.
  • Der benutzerdefinierte Aktionsfilter kann auf diese Eigenschaft zugreifen und eine entsprechende Fehlerreaktion erstellen.

Zusätzliche Überlegungen

  • Sie Sie können über die Errors-Eigenschaft des ModelState auf die Validierungsfehler zugreifen.
  • Passen Sie die an den zurückgegebene Fehlermeldung an Client.
  • Stellen Sie sicher, dass die Modellvalidierung in Ihrer gesamten API konsistent ist.

Das obige ist der detaillierte Inhalt vonWie implementiert man die Modellvalidierung effektiv in der ASP.NET-Web-API?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage