Web API: Zawartość w HttpResponseMessage
W jednym z moich żądań pobierania chcę zwrócić wiadomość HttpResponseMessage z pewną zawartością. Obecnie działam w następujący sposób:
var header = new MediaTypeHeaderValue("text/xml");
Request.CreateResponse(HttpStatusCode.OK, myObject, header);
Ponieważ jednak używam statycznego Żądania, jest to naprawdę trudne do przetestowania. Z tego, co przeczytałem, powinienem być w stanie wykonać następujące czynności:
return new HttpResponseMessage<T>(objectInstance);
Wydaje się jednak, że nie jest w stanie tego zrobić. Czy dlatego, że używam starszej wersji WebApi / .NET?
Na marginesie stwierdziłem, że potencjalnie możesz utworzyć odpowiedź w następujący sposób:
var response = new HttpResponseMessage();
response.Content = new ObjectContent(typeof(T), objectInstance, mediaTypeFormatter);
Zastanawiało mnie, dlaczego muszę tutaj dodać mediaTypeFormatter. Dodałem formatowanie typu multimediów na poziomie global.asax.
Dzięki!