Web-API: Inhalt in HttpResponseMessage
In einer meiner Get-Anfragen möchte ich eine HttpResponseMessage mit etwas Inhalt zurückgeben. Derzeit arbeite ich wie folgt:
var header = new MediaTypeHeaderValue("text/xml");
Request.CreateResponse(HttpStatusCode.OK, myObject, header);
Da ich jedoch die statische Anforderung verwende, wird es sehr schwierig, diese zu testen. Nach dem, was ich gelesen habe, sollte ich Folgendes tun können:
return new HttpResponseMessage<T>(objectInstance);
Scheint aber nicht dazu in der Lage zu sein. Liegt es daran, dass ich eine ältere Version von WebApi / .NET verwende?
Nebenbei habe ich festgestellt, dass Sie möglicherweise eine Antwort wie folgt erstellen können:
var response = new HttpResponseMessage();
response.Content = new ObjectContent(typeof(T), objectInstance, mediaTypeFormatter);
Was mich verwundert hat, ist, warum ich hier einen mediaTypeFormatter hinzufügen muss. Ich habe den Medientyp-Formatierer auf global.asax-Ebene hinzugefügt.
Vielen Dank!