Привязать сетку кендо к тексту CSV
Я использую Telerik UI для ASP.Net MVC, и я хочу знать, как я могу преобразовать свою модель в текст CSV и связать ее с сеткой Kendo, это будет более легким, чем JSON, при передаче данных клиенту.
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 }
]
}
Я получил постыдную 10% -ную экономию, настроив сообщение JSON и изменив свой клиентский код (перевод: накладные расходы).
После небольшого анализа моего HTTP-трафика я понял, что браузер поддерживает сжатие GZIP, заголовки запросов любого приличного браузера включают "Accept-Encoding: gzip, deflate", но каким-то образом мой сервер полностью игнорировал эту вещь, потому что не было ответа заголовок с надписью "Content-Encoding: gzip".
В этом можно убедиться, проверив заголовки запроса и ответа, см. Рисунок.
Поэтому после того, как я заставил сервер кодировать контент с помощью сжатия GZIP, если клиент поддерживает его, экономия сети сократилась до 80%.
GZIP-сжатие это: - Быстро на сервере - Легко на клиенте - Вы можете выбрать, где его активировать или нет (скажем, использовать его для ответов, которые, как вы знаете, будут возвращать большое количество элементов) - Преимущества от повторяющегося текстового содержимого (как он использует словарный подход)
Поверьте мне, не беспокойтесь о том, как выглядит JSON, используйте GZIP. Я должен был отменить весь мой служебный код впоследствии.