Die ASP.NET 4-Web-API kann den Statuscode "201 - Created" für den erfolgreichen POST nicht zurückgeben

8

Ich versuche, einen HTTP-Statuscode von 201 Created für eine RESTful-POST-Operation unter Verwendung der ASP.NET 4-Web-API zurückzugeben, bekomme aber immer eine 200 OK .

Ich debugge derzeit auf IIS 7.5.7600.16385, VS 2010 Professional, Windows 7 64-Bit Professional.

%Vor%

Ich habe andere Beispiele gesehen, in denen HttpContext.Current.Response.StatusCode vor dem Zurückgeben von Daten gesetzt wurde, also dachte ich nicht, dass dies ein Problem wäre. Ich habe es noch nicht in der MVC 4-Quelle gefunden.

(Das hängt mit meinen Untersuchungen mit diese Frage , aber andere genug Thema, um seine eigene Frage zu rechtfertigen)

Ich bin mir nicht sicher, ob das Problem IIS oder die Web-API ist. Ich werde weitere Tests machen, um es einzugrenzen.

    
MikeJansen 27.04.2012, 20:38
quelle

2 Antworten

9

HttpContext.Current ist ein Kater aus der Vergangenheit.

Sie müssen die Antwort als HttpResponseMessage<T> definieren:

%Vor%

AKTUALISIEREN

Wie Sie aus den Kommentaren entnehmen können, funktioniert dieser Ansatz mit beta . Nicht der RC.

    
Aliostad 27.04.2012, 21:07
quelle
-1

Versuchen Sie Folgendes:

%Vor%     
Florian Winter 10.02.2017 08:43
quelle