我正在为内部使用开发WebApi Odata服务。我想从服务器的响应中删除除序列化数据之外的所有其他数据。 我想删除所有这些东西:
{
"@odata.context":"http://192.168.150.86:9933/odata/$metadata#Terminal","value":[
]
}
并且只留下“终端”数组
有没有办法做到这一点?
答案 0 :(得分:3)
将以下选项添加到查询字符串中:
$format=application/json;odata.metadata=none
这将从结果中删除odata元数据。
答案 1 :(得分:0)
这是如何实现的。
var ODataJSON = JsonConvert.DeserializeObject<JObject>(json);
ODataJSON.Property("@odata.context").Remove();
ODataJSON.Add("Terminal", ODataJSON["value"]); //adding Terminal attribute
ODataJSON.Property("value").Remove(); // removing default value attribute.
答案 2 :(得分:0)
假设您正在编写一个返回IHttpActionResult的新函数。要返回数据,可以使用Json方法。它删除了元数据
答案 3 :(得分:0)
您还可以设置 Accept
标题
Accept: application/json;odata.metadata=none