Pessoal, recentemente encontrei um problema no qual eu resolvi de forma muito simples.
Ao implementar uma WebApi em MVC 4 , a mesma por padrão estava retornando o objeto em XML e eu queria que a mesma retornasse em JSON direto no navegador, mas sem a utilização de Jquery ou JavaScript.
Para isto, apenas adicionei um simples comando na classe WebApiConfig que geralmente fica na pasta App_Start de um projeto.
Veja como ficou :
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
var appXmlType = config.Formatters.XmlFormatter.SupportedMediaTypes.FirstOrDefault(t => t.MediaType == "application/xml");
config.Formatters.XmlFormatter.SupportedMediaTypes.Remove(appXmlType);
}
}
Se você fizer isso no WebApiConfig você terá JSON por padrão, mas ainda lhe permitirá retornar XML se você passar text / xml como o pedido cabeçalho do método ou controller.
Espero que esta dica tenha ajudado! 🙂
