ASP.NET WebAPI和带有大型数据集的jQuery(json)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.NET WebAPI和带有大型数据集的jQuery(json)相关的知识,希望对你有一定的参考价值。
我有一个使用C#在ASP.NET MVC 5.0中开发的服务器端Web API,它从SQL Server后端读取JSON格式(~25MB)的大量数据。在我的jQuery客户端内部调用此API时,请求/响应已成功完成,但在html页面中呈现结果(报告)之前需要大约5分钟。
我想寻找一个模式或代码片段,我可以在其中下载数据(或流),所以我不必等待整个5分钟完成页面呈现报告之前。
提前致谢!
在您进行流式传输之前,我几乎没有提高性能的建议。
1-尝试减少有效负载。您可以使用属性的小别名来执行此操作。例如。
[JsonProperty(PropertyName = "mbpn")]
public string MyBigPropertyName{ get; set; }
这将大大减少您的总有效负载(25 + MB)。我有个人经验,我的数据从60 MB减少到6 MB。
2-选择快速的JSON
序列化器。你可以查看性能比较here
3-在Clint端,不要一次性绑定整个数据,将DOM附加在块中。
4-客户端的用户虚拟化。
如果你仍然想要流媒体,你可以查看这个link。
我找到了一个帮助我的插件,它叫做jsonpipe,来自https://github.com/eBay/jsonpipe
以上是关于ASP.NET WebAPI和带有大型数据集的jQuery(json)的主要内容,如果未能解决你的问题,请参考以下文章
带有 jQuery DataTables 和服务器端数据加载的 ASP.Net Webforms GridView
带有 jQuery 验证的 ASP.Net MVC Ajax 表单
带有 JWT Bearer 令牌和 ASP.NET Core 2 WebApi 的 Azure AD 用户信息
带有协议缓冲区的 ASP.NET WebApi - 错误处理