[#] Как JavaScript Grid работает с протоколом OData
habrabot(difrex,1) — All
2015-03-03 08:00:04


В прошлой статье мы упоминали, что:

> В настоящее время существует большое количество библиотек, поддерживающих протокол OData, и каждый день появляются новые. В частности, с OData работают такие JavaScript библиотеки, как
>
> [Kendo UI][1]
>
> ,
>
> [DevExtreme Web][2]
>
> ,
>
> [Syncfusion HTML5 controls][3]
>
> ,
>
> [Infragistics HTML5 controls][4]
>
> ,
>
> [OpenUI5][5]
>
> ,
>
> [Wijmo][6]
>
> ,
>
> [JayData][7]
>
> ,
>
> [Breeze.js][8]
>
> ,
>
> [datajs][9]
>
> ,
>
> [ODataJS][10]
>
> ,
>
> [angular-odata][11]
>
> , и т.д.
>
>
>
>
>
> Многие из этих библиотек существенно упрощают разработку сложных приложений благодаря стандарту OData. Например, достаточно грид контролу указать URL к серверу OData и все остальное он сделает сам: пэйджинг, сортировку, добавление- модификацию-удаление записей, фильтрацию данных, группировку и т.д.
>
>

Мы подготовили примеры того, как гриды работают с OData.

* [http://nitrosdata.com/samples\_kendo\_ui\_grid1.html][12] — Kendo UI Grid.
* [http://nitrosdata.com/samples\_kendo\_ui\_grid2.html][13] — Kendo UI Grid с виртуальным скроллингом вместо пэйджинга.
* [http://nitrosdata.com/samples\_devexpress\_grid.html][14] — DevExtreme Data Grid.
* [http://nitrosdata.com/samples\_syncfusion\_grid.html][15] — Syncfusion Grid.

**Основные запросы грида к серверу:**

* Получить общее количество записей, удовлетворяющих некоторому условию.
* Получить выборку из общего набора записей для показа на одной странице.
* Получить весь набор записей.
* Отсортировать записи по одному или нескольким полям.
* Отфильтровать записи по некоторому набору условий.
* Добавить новую запись.
* Модифицировать запись.
* Удалить запись.
* Batch update – добавление, изменение и удаление группы записей.

Рассмотрим детальнее основные запросы на примере [Читать дальше →][16]

[1]: http://www.telerik.com/kendo-ui
[2]: http://js.devexpress.com/webdevelopment/
[3]: http://www.syncfusion.com/products/javascript
[4]: http://www.infragistics.com/products/jquery
[5]: http://openui5.org/
[6]: http://wijmo.com/
[7]: http://jaydata.org/
[8]: http://www.getbreezenow.com/
[9]: http://datajs.codeplex.com/
[10]: http://olingo.apache.org/doc/javascript/
[11]: https://github.com/rangelier/angular-odata
[12]: http://nitrosdata.com/samples_kendo_ui_grid1.html
[13]: http://nitrosdata.com/samples_kendo_ui_grid2.html
[14]: http://nitrosdata.com/samples_devexpress_grid.html
[15]: http://nitrosdata.com/samples_syncfusion_grid.html
[16]: http://habrahabr.ru/post/251965/#habracut