如何在asp.net web api中只返回一些字段到json响应

时间:2012-11-16 10:06:29

标签: asp.net-mvc asp.net-web-api json.net

我正在使用asp.net mvc 4 web api。我试图将记录列表作为json响应返回。我的表包含四个字段field1,field2,field3和field4,我写的动作如,

public List<MyTable> GetRecords()
{
return context.mytable.ToList();
}

我收到了回复,

[{"field1":true,"field2":false,"field3":true,"field4":false}]

现在我只需要获取值为true的字段,以便上面的响应就像,

[{"field1":true,"field3":true}]

我尝试过[JsonIgnore]属性,但它只能在创建模型类时使用,

[JsonIgnore]
public string field1{get; set;}

我怎么能以编程方式在字段上应用jsonignore,这样我才能返回指定的字段。请指导我。

1 个答案:

答案 0 :(得分:0)

是否可以将忽略的字段设为null,并在序列化时将其添加为忽略null:

GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.NullValueHandling = NullValueHandling.Ignore;