Как изменить формат форматирования по умолчанию ASP.NET MVC Web API?

У меня есть проект веб-API, который возвращает некоторые данные о продуктах. Он корректно согласовывает тип возврата в зависимости от заголовка Accept (JSON/XML) запроса. Проблема в том, что если заголовок Accept не указан, он возвращает JSON, но я хочу, чтобы он возвращал XML по умолчанию. Как изменить значения согласования контента в Global.asax?

Ответы

Ответ 1

Нашел решение через http://www.strathweb.com/2013/06/supporting-only-json-in-asp-net-web-api-the-right-way/

Добавлено это в WebApiConfig.Register():

config.Formatters.Clear();
config.Formatters.Add(new XmlMediaTypeFormatter());
config.Formatters.Add(new JsonMediaTypeFormatter());
config.Formatters.Add(new FormUrlEncodedMediaTypeFormatter());

Таким образом, по умолчанию используется XML, первый форматтер, но API по-прежнему поддерживает JSON, если запрос запрашивает его.