将Kendo网格绑定为CSV文本

时间:2014-06-17 22:20:17

标签: asp.net-mvc kendo-grid telerik-mvc

我正在为ASP.Net MVC使用Telerik UI,我想知道如何将我的模型转换为CSV文本并将其绑定到Kendo网格,它将比JSON更轻,同时将数据传输到客户端。

1 个答案:

答案 0 :(得分:1)

我理解你的担忧,我实际上是在我的项目上做同样的事情,试图优化发送回客户端的JSON中的额外字节。

转过这样的话:

{
    status: true,
    data: [
        { name: 'aaa', lastName: 'ln1', identifier: 124343 },
        { name: 'bbb', lastName: 'ln2', identifier: 887875 },
        { name: 'ccc', lastName: 'ln3', identifier: 445455 }
    ]
}

进入这个:

{
    s: 1,
    d: [
        { n: 'aaa', l: 'ln1', i: 124343 },
        { n: 'bbb', l: 'ln2', i: 887875 },
        { n: 'ccc', l: 'ln3', i: 445455 }
    ]
}

通过调整JSON消息并调整我的客户端代码(翻译:开销),我节省了10%的可耻。

在对我的HTTP流量进行一些分析后,我意识到浏览器支持GZIP压缩,任何像样的浏览器的请求头包括“Accept-Encoding:gzip,deflate”但不知何故我的服务器完全忽略了这个东西,因为没有回复标题说“Content-Encoding:gzip”

您可以通过检查请求和响应标头来验证这一点,请参阅图片。

Verifying gzip encoding on Firebug

因此,在我强制服务器使用GZIP压缩对内容进行编码后,如果客户端支持它,则网络节省降低到80%的大小。

GZIP压缩是: - 在服务器上快速 - 方便客户 - 您可以选择是否激活它(让我们说在您知道将返回大量项目的响应中使用它) - 重复文本内容的好处(因为它使用字典方法)

相信我,不要担心JSON的外观,使用GZIP。之后我不得不恢复所有的开销代码。