Ich verwende HttpClient
, um meine API aufzurufen. Ich baue ein Objekt und es in die PostAsJsonAsync
wie dies vorbei:Mit HttpClient PostAsJsonAsync zum Aufruf meiner API, wie akzeptieren Sie den komplexen Typ in der API richtig?
var foo = new Foo
{
//We will say these are the only two properties on the model:
Id = 1,
Name = "Test"
};
var response = await httpClient.PostAsJsonAsync("myApiPath/mytest", foo);
Da ist in meinem API Ich versuche, die foo
Objekt und einige Sachen mit ihm zu greifen und geben einen HttpStatusCode
wie folgt aus:
Aber das funktioniert nicht, bekomme ich eine 500
Fehler, wenn ich <T>
verwenden.
Nur um sicherzugehen, dass ich in der Lage war ahold der api zu bekommen und etwas passieren in I foo
-"someRandomString"
und dann in der API geändert änderte ich MyTest
nur einen String in wie folgt zu akzeptieren: public HttpResponseMessage MyTest(string someRandomString) { }
und das hat gut funktioniert.
Wie kann ich den komplexen Typ erhalten, um richtig in die API übergeben zu werden?
Danke für die Antwort. Kurz vor Ihrer Antwort hatte ich gerade die gleichen Modelle "DLL" referenziert und wollte versuchen, das gleiche Modell zu umgehen. Freut mich zu wissen, dass ich auf dem richtigen Weg war. – maxshuty
Ja, Sie sind auf dem richtigen Weg. –