Вопрос

Мне дали прототип/макет сетки, написанный на html и javascript (через ExtJS), который мне теперь нужно реализовать в веб-приложении ASP.net.Есть ли у кого-нибудь подсказки о том, как передавать данные в сетку (в частности, в GroupingStore).

Я бы предпочел, чтобы не было большого количества веб-сервисов или вспомогательных страниц, возвращающих XML/JSON, поэтому, если есть способ использовать обратные вызовы клиента или методы страницы (разве вы не знаете, что я не особо знаком с ними - модное словечко бинго!) или какой-то такой, который был бы предпочтительнее.

Пожалуйста, не рекомендуйте мне использовать jQuery, встроенную сетку ASP.net или любую другую среду пользовательского интерфейса.Использование сетки ExtJS было санкционировано власть имущими, так что я использую именно эту сетку, к лучшему или к худшему :)

Это было полезно?

Решение

Вот низкотехнологичное решение.Он не требует использования веб-сервисов или каких-либо других дополнительных технологий.

Шаг 1

Создайте страницу ASPX, которая принимает один параметр и вызывается следующим образом:

http://mysite.com/query.aspx?sql=select * from orders where status = 'open'

Шаг 2

В коде сделайте что-то вроде этого

void Page_Load(object sender, EventArgs e)
{
   Response.ContentType="text/json"; 
   DataTable contents = ExecuteDataTable(Request["sql"]);
   Response.Write( JRockSerialize( contents ) );
   Response.End();
}

Вы можете использовать ДжейРок для сериализации таблицы данных в JSON.ИМХО это дает самый чистый JSON.

Так что это становится DataTable в JSON отсортировано...

ПРЕДУПРЕЖДЕНИЕ:Очевидно, это упрощенный пример.Не следует передавать SQL в строку запроса, поскольку это небезопасно (вместо этого можно использовать именованные запросы и параметры).

Шаг 3

В вашем коде ExtJS создайте сетку с хранилищем данных Json, как показано на этом рисунке. Внешний пример.Установить хранилище данных url: к странице query.aspx с соответствующими параметрами строки запроса.

Вам также потребуется настроить столбцы для сетки, как это снова показано в примере ExtJs.

Альтернативно...

Я был очень впечатлен, когда посмотрел на Образцы кулита недавно.Они являются партнерами ExtJS и предоставляют хороший опыт работы с ASP.NET и ExtJS.И нет, я у них не работаю :) Их сетку не пробовал, но возможно это безболезненно (по цене).

Другие советы

Я полагаю, что сервис, который просто возвращает структуры json для ваших страниц, является наилучшим вариантом: он хорошо абстрагируется и может использоваться повторно в приложении, а не в методах страниц.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top