MVC 4 Возвращение к API веб-API: типы против HttpResponseMessage
В чем разница, возвращающая типы, например.
public class MyController : ApiController
{
public IEnumerable<MyType> Get()...
против
Возврат HttpResponseMessage:
public class MyController : ApiController
{
public HttpResponseMessage Get()...
??
Влияет ли MVC на типы содержимого HttpResponseMessage? Результат на странице выглядит так же, если явно не добавлены форматиры.
В чем разница с клиентом?
Ответы
Ответ 1
Нет никакой разницы.
Если вы вернете тип CLR, он все равно будет завернут с помощью HttpResponseMessage
.
Единственное различие заключается в том, что если вы вернетесь HttpResponseMessage
, вы получите возможность напрямую работать с HTTP - чтобы вы могли устанавливать заголовки, обходить MediaTypeFormatters
и т.д.
Все это зависит от личных предпочтений и/или активности, выполняемой в вашем действии.