Я использую nonfactors.grid.mvc6 версии 6.0.0 для проекта веб -приложения .net 8, и у меня есть этот запрос от клиента: < /p>
Кнопка, которая выбирает все ряды на всех страницах, применяемые в сетке с сети < /li>
. Страницы) < /li>
< /ul>
Например, если у меня есть в документах базы данных 1000, и пользователь применяет некоторые фильтры даты и суммируется больше, чем x сумма, скажем, он отфильтровал до 400 документов; Мне нужно знать, что идентификатор этих 400 документов может быть в состоянии «выбрать» их и сделать сумму от общего числа. И в конце концов, я борюсь с тем, что нефакторная сетка использует свой внутренний механизм для доступа к iQueryCollection со значениями из URL-адреса и создает свои собственные выражения, которые выполняются, когда ряды перечисляются, и у меня нет доступа к всему взгляду . Back-end. < /p>
Я бы предпочел избегать копирования целого механизма применения фильтров и конструирования пользовательской логики для всех сетей, которые у меня есть, и всех типов фильтров (содержит, больше, чем меньше, чем, равно, равны и т. Д. Или разные комбинации фильтров) < /p>
Я попытался создать построение, но Получите все, но Получите все значения, но Получите все, но Получите все, но Получите все значения, но Получите все, но Получите все значения. не работает, только страна: < /p>
IGrid grid = new Grid(DataSource);
grid.ViewContext = new ViewContext();
grid.Query = requestQuery; //
{
columns.Add(model => model.DocumentNumber);
columns.Add(model => model.Status);
columns.Add(model => model.DocumentDate);
})
.Pageable(pager =>
{
pager.PageSizes = new Dictionary { { 10, "10" }, { 20, "20" }, { 50, "50" }, { 100, "100" } };
pager.ShowPageSizes = true;
pager.PagesToDisplay = 5;
pager.RowsPerPage = 10;
})
.Sortable()
.Filterable(GridFilterCase.Lower)
.Using(GridFilterMode.Row);
var rows = grid.Rows.ToList(); //
Некоторые другие идеи, которые мне не нравятся, - это позвонить с Ajax, чтобы построить дубликатную сетку без страниц и рассчитать значения с помощью JS; или используйте JS, чтобы получить страницы один за другим, чтобы получить данные, которые мне нужно показать на пользовательском интерфейсе; Но мне не нравится ни один из них, потому что я могу ожидать, что в некоторых сценариях будет более 100 000 предметов, которые будут медленными.
Любая помощь ценится.
Подробнее здесь: https://stackoverflow.com/questions/797 ... w-in-nonfa
Есть ли способ применять фильтры запросов сетки, прежде чем построить представление в нефакторах.grid.mvc6? ⇐ C#
Место общения программистов C#
1759155532
Anonymous
Я использую nonfactors.grid.mvc6 версии 6.0.0 для проекта веб -приложения .net 8, и у меня есть этот запрос от клиента: < /p>
Кнопка, которая выбирает все ряды на всех страницах, применяемые в сетке с сети < /li>
. Страницы) < /li>
< /ul>
Например, если у меня есть в документах базы данных 1000, и пользователь применяет некоторые фильтры даты и суммируется больше, чем x сумма, скажем, он отфильтровал до 400 документов; Мне нужно знать, что идентификатор этих 400 документов может быть в состоянии «выбрать» их и сделать сумму от общего числа. И в конце концов, я борюсь с тем, что нефакторная сетка использует свой внутренний механизм для доступа к iQueryCollection со значениями из URL-адреса и создает свои собственные выражения, которые выполняются, когда ряды перечисляются, и у меня нет доступа к всему взгляду . Back-end. < /p>
Я бы предпочел избегать копирования целого механизма применения фильтров и конструирования пользовательской логики для всех сетей, которые у меня есть, и всех типов фильтров (содержит, больше, чем меньше, чем, равно, равны и т. Д. Или разные комбинации фильтров) < /p>
Я попытался создать построение, но Получите все, но Получите все значения, но Получите все, но Получите все, но Получите все значения, но Получите все, но Получите все значения. не работает, только страна: < /p>
IGrid grid = new Grid(DataSource);
grid.ViewContext = new ViewContext();
grid.Query = requestQuery; //
{
columns.Add(model => model.DocumentNumber);
columns.Add(model => model.Status);
columns.Add(model => model.DocumentDate);
})
.Pageable(pager =>
{
pager.PageSizes = new Dictionary { { 10, "10" }, { 20, "20" }, { 50, "50" }, { 100, "100" } };
pager.ShowPageSizes = true;
pager.PagesToDisplay = 5;
pager.RowsPerPage = 10;
})
.Sortable()
.Filterable(GridFilterCase.Lower)
.Using(GridFilterMode.Row);
var rows = grid.Rows.ToList(); //
Некоторые другие идеи, которые мне не нравятся, - это позвонить с Ajax, чтобы построить дубликатную сетку без страниц и рассчитать значения с помощью JS; или используйте JS, чтобы получить страницы один за другим, чтобы получить данные, которые мне нужно показать на пользовательском интерфейсе; Но мне не нравится ни один из них, потому что я могу ожидать, что в некоторых сценариях будет более 100 000 предметов, которые будут медленными.
Любая помощь ценится.
Подробнее здесь: [url]https://stackoverflow.com/questions/79778225/is-there-a-way-to-apply-grid-query-filters-before-constructing-the-view-in-nonfa[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия