如果合理/如何减少json OData结果大小

时间:2015-12-02 10:42:00

标签: asp.net json asp.net-mvc asp.net-mvc-4 odata

ASP.NET MVC4 WebAPI应用程序有OData控制器,它将json中OData v4格式的大量单元数据返回给浏览器中的javascript / jquery客户端:

[Authorize]
public class MyODataController : ODataController
{


    [Queryable]
    public HttpResponseMessage Get(string id, ODataQueryOptions queryOptions)
    {
  ...

返回的结果是每行具有相同列的表。 似乎OData要求每一行都必须具有指定的属性。 是增加数据大小,每行都有红色值。

如何解决此问题,以便可以为所有行一次指定属性?例如,也许json数组可以用于行数据? 或者可以返回这些冗长的数据?它对性能有多大影响?

1 个答案:

答案 0 :(得分:0)

如果我理解你的问题:

您可以使用Contact.joins(:contact_events).where("user_id = 1").includes(:contact_events).map{|c| c.contact_events.size}返回您期望的列。

您可以使用`$ filter'返回您期望的行。