让ASP.NET Web API默认返回JSON格式

最近重构一些项目里的代码,有一项就是把之前写在MVC的controller里的api方法挪到Web Api controller里,发现ASP.NET Web API的controller默认的返回数据格式是XML格式,搜了一下,要改成返回JSON格式只需要在WebApiConfig.cs文件里的Register方法末尾加上下面几行代码即可

var json = config.Formatters.JsonFormatter;
json.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.Objects;
config.Formatters.Remove(config.Formatters.XmlFormatter);