Web Grid, клиентская привязка VS. Генерация HTML на стороне сервера - PullRequest
2 голосов
/ 14 июля 2009

Я работаю над заменой существующей веб-сетки в веб-приложении ASP.NET новой реализацией. Существующая сетка является мощной, но недостаточно гибкой. Это также приносит с собой все виды фреймворков, которые нам не нравятся на наших веб-страницах.

Изучая существующие варианты, я заметил, что могу разбить имеющиеся решения на два основных подхода. Старый подход лучше всего представлен в ASP.NET GridView. Это классический элемент управления ASP.NET, который генерирует необходимый HTML-код на сервере на основе заданного набора данных. Новый подход зависит от рендеринга на стороне клиента, в основном с использованием jQuery. Хорошим примером будет jqGrid . Клиенту отправляются только данные (обычно с JSON или XML)

В случае GridView, если я хочу поведение AJAX, мне нужно было бы реализовать его с чем-то вроде панели обновления.

  • Есть ли определенный выбор, который я должен сделать?
  • Есть ли хороший шанс добиться такого же быстрого поведения, которое я получаю с jqGrid (даже со многими записями), с элементами управления, отображаемыми на стороне сервера?
  • Существует ли гибридная реализация, включающая оба подхода?

Ответы [ 2 ]

2 голосов
/ 14 июля 2009
  1. Нет определенного выбора, который стоит сделать, но стоит отметить, что переход на клиентские элементы управления AJAX - довольно большая парадигма сдвиг, который потребует от вас переосмыслить, как вы делаете почти все с сеткой.

  2. Переход на полпути (с использованием серверного элемента управления, такого как GridView в UpdatePanel), вероятно, улучшит пользовательский опыт, так как страница все еще будет видимой и отзывчивой, пока она обновляется. Но стиль UpdatePanel по-прежнему неуклюжий по сравнению с новым клиентом сетки, потому что этот метод отправляет все данные формы страницы, когда она отправляет обратно (включая все это ViewState в GridView, если ViewState включен на). Одно краткое предупреждение: GridView не совместимо с UpdatePanel когда GridView.EnableSortingAndPagingCallbacks установлено в значение true.

  3. Я не использовал ни одну из этих гибридных реализаций (например, оболочки Ext от Coolite для .NET), но они есть. Было по крайней мере одно хорошее SO-обсуждение по этой теме и различные сетки, доступные здесь .

1 голос
/ 08 мая 2010

Я также оцениваю jgGrid против Gridview. Я просто заинтересован в производительности и эффективности сетки. Несмотря на то, что у jqGrid есть небольшая кривая обучения, я могу потратить некоторое время на изучение, если это может обеспечить значительное улучшение производительности по сравнению с gridview. Может ли какой-либо эксперт пролить больше света на эту тему? Большое спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...