为什么Web Api会为结果集添加额外的$ id

时间:2014-07-02 14:29:16

标签: c# asp.net-mvc asp.net-web-api

我有Web Api服务,返回一些对象的可枚举列表, 但我在客户端看到每个对象额外的$ id? 为什么我得到它?是什么原因 ?是可以停用吗?

2 个答案:

答案 0 :(得分:4)

它会自动添加句柄,所以如果元素再次出现在代码中,它只会添加对它的引用。

您可以通过将其添加到全局asax(或您正在使用的任何其他引导程序)中的Application_Start来停用它。

var json = config.Formatters.JsonFormatter;
json.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.None;

答案 1 :(得分:0)

GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.None;