2013-06-14 4 views
0

Есть ли пример или документация по обработке опубликованных «_search» и «фильтров» данных и их использование для запроса базы данных для результата?Есть ли документация или пример обработки размещенных значений «_search» и «filters» на серверной стороне и запрос на создание базы данных?

Благодаря ...

ответ

0

Значение _search просто логическая. Если _search - true, то следует отфильтровать данные с использованием параметра filters, формат которого описан в the documentation.

prmNamesoption для переименования _search. Например, prmNames: { search: null, nd: null } удалите ненужные параметры _search и nd и еще один пример prmNames: { search: "isSearching" } переименовать значение по умолчанию _search в значение isSearching.

Обработка из опубликованного filters параметра зависит от многих деталей реализации, которые вы используете. Вы использовали как jqgrid-asp.net, так и jqgrid-php теги: коммерческие продукты разработаны на основе свободного открытого кода jqGrid. Я не могу помочь вам в этом, потому что я не знаю продуктов. Кроме того, мне очень странно, что вы включили PHP и ASP.NET в качестве тегов. Реализация может быть совершенно другой в обоих случаях. Событие, если ASP.NET является вашей основной платформой, тогда доступ к базе данных , который вы используете, является наиболее важным аспектом реализации. Три типичных варианта: Entity Framework, LINQ to SQL и SQLCommand с SqlDataReaderабсолютно разные реализация динамической фильтрации.

The answer Предоставить пример реализации в случае использования Entity Framework. Самым преимуществом использования Entity Framework является возможность использования ObjectQuery.Where с параметром . В способе можно построить строку с параметрами от filters, которые должны быть использованы в части инструкции SQL. Вы можете использовать в основном тот же подход для создания команды SQLCommand с параметрами.

LINQ to SQL с другой стороны не имеют возможности, и нужно использовать более сложный подход, например here, или использовать некоторые библиотеки (например, this one).

Что я действительно рекомендую вам рассмотреть, чтобы использовать loadonce: true. Если набор данных, который вам нужно отображать в сетке, содержит несколько сотен (или даже тысяч) строк, тогда было бы более эффективным вернуть все данные в jqGrid (данные должны быть правильно отсортированы) и использовать loadonce: true для реализации местный фильтрация и подкачка данных. Он может упростить ваш код сервера, и сетка может быть еще более ответственной с точки зрения пользователей, потому что механизм JavaScript теперь достаточно быстро, и локальная фильтрация через jqGrid может быть более быстрой, как отправка запроса на сервер и использование фильтрации на стороне сервера.

+0

Мы больше не хотим использовать «loadonce: true». Мы обнаружили, что это вызывает больше проблем, чем это стоит (когда мы продолжали добавлять, взламывать или настраивать сценарии JQuery). Мы решили позволить фоновому серверу делать тяжелые работы.Недостатком Javascript является среда выполнения, поэтому нам не повезло из-за отсутствия надежного компилятора Javascript. Мы заметили, что Тони не очень активен в обслуживании или слиянии патчей людей с исходным кодом jqGrid GitHub. Таким образом, мы решили, что нам лучше позволить веб-серверу делать работу и меньше головной боли для нас. Мы не можем ждать вечно. :-( – fletchsod

+0

Хорошо, мы сами это рассмотрим при написании сценариев сервера sql. Спасибо за попытку. – fletchsod

 Смежные вопросы

  • Нет связанных вопросов^_^