Binding ist der Prozess des Festlegens von Parameterwerten, wenn die Web-API einen Controller aufruft Wie es geht.
Web-API-Methoden mit verschiedenen Parametertypen und deren Anpassung Bindungsprozess.
Wenn der Parameter ein einfacher Typ wie int, bool, double usw. ist, versucht die Web-API, den Wert aus dem URI abzurufen (aus Routendaten oder einer Abfragezeichenfolge).
Wenn der Parameter ein komplexer Typ ist, wie Kunde, Mitarbeiter usw., dann Web-API Das Framework versucht, den Wert aus dem Anforderungstext abzurufen.
Wir können das Standardverhalten des Parameterbindungsprozesses mit ändern Eigenschaften [FromBody] und [FromUri].
FromUri -
Wenn der Parameter ein einfacher Typ ist, versucht Web Api, ihn von URI
.NET-Grundtypen wie Double, DateTime, GUID-String und jedem verwendbaren Typ abzurufen Vom String-Typ konvertieren
public Student Get(int id){}
Wenn der Parametertyp vom Typ Complex ist, versucht Web Api, den Wert von zu binden Nachrichtentext.
Public Student Post(Employee employee){}
Um die Web-API zu zwingen, komplexe Typen aus URI zu lesen, fügen Sie das Attribut [FromUri] hinzu zu Parametern
Verwenden Sie das Attribut [FromUri], um Web-API zu zwingen, den Wert des Typs „Komplex“ abzurufen Abfragezeichenfolge.
public Student Get([FromUri] Employee employee) public HttpResponseMessage Get([FromUri] Employee employee) { ... }
Verwenden Sie das Attribut [FromBody], um den Wert des primitiven Typs aus dem Anforderungstext abzurufen. Im Gegensatz zur Standardeinstellung
Nein, mehrere FormBody sind in einem einzigen Vorgang nicht zulässig.
Um die Web-API zu zwingen, einen einfachen Typ aus dem Anforderungstext zu lesen, fügen Sie [FromBody] hinzu.
In diesem Beispiel verwendet die Web-API den Medientypformatierer, um den Wert des Namens zu lesen Aus dem Anfragetext
public Student Post([FromBody] string name]){...} public HttpResponseMessage Post([FromBody] string name) { ... }
Das obige ist der detaillierte Inhalt vonWas ist Parameterbindung in C# ASP.NET WebAPI?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!