сетка управления для ASP.NET MVC? [закрыто]

278

Если вы используете ASP.NET MVC, как вы делаете отображение сетки? Прокатил сам? Есть библиотека откуда-то?

Вот некоторые из известных решений отображения сетки, которые я нашел для ASP.NET MVC

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

MikeJ
источник
5
Я надеялся на сетку с поддержкой javascript, но которая могла бы приятно ухудшиться до полного запроса GET, если JavaScript отключен. Однако я должен буду построить свой собственный :(
Андрей Ринея
18
не могу с тобой согласиться ... у меня тоже были закрытые вопросы, но я был удивлен, что и этот тоже. Получение хороших голосов должно говорить о том, насколько конструктивным является вопрос. Этим модераторам недостаточно, потому что они очень хотят показать нам, что конструктивно, а что нет.
Sonic Soul
11
Да, этот вопрос очень конструктивен для меня. Но они всегда закрывают вопросы, которые задают, какую библиотеку лучше использовать.
Джош Моуч
11
Меня поразительно удивляет, что эти «модераторы», кажется, думают, что знают, что полезно лучше, чем люди, которые считают их полезными.
Кен Смит
4
Я не мог согласиться больше. конструктивное прилагательное 1. служение полезной цели; стремится наращивать.
Дейв Джеллисон

Ответы:

40

Мы использовали jqGrid в проекте и нам повезло с этим. Множество опций для встроенного редактирования и т. Д. Если эти вещи не нужны, то мы просто использовали простой цикл foreach, такой как @Hrvoje.

Шон Карпентер
источник
Привет @ SeanCarpenter- Любое предложение для этого
Мохаммед Замир
1
Обратите внимание, что это коммерческий продукт, и его загрузка занимает 30 дней.
Amir978
29

Мы используем Slick Grid в Stack Exchange Data Explorer ( пример, содержащий 2000 строк ).

Я обнаружил, что он превосходит jqGrid и flexigrid . У этого есть очень полный набор функций, и я не мог рекомендовать это достаточно.

Образцы его использования здесь .

Вы можете посмотреть исходные примеры того, как оно интегрировано в приложение ASP.NET MVC, здесь: https://code.google.com/p/stack-exchange-data-explorer/

Сэм Шафран
источник
Это очень красиво и эффективно, но только если вы собираетесь всегда использовать простые данные и столбцы (я добавляю некоторые штрихи в виде таблиц, графиков и т. Д. К некоторым таблицам, чтобы сделать их более приятными)
Эдуардо Молтени
Глядя на образцы ... кажется, что вы можете сделать много вещей с этой сеткой ... Мне понравилось ...
Romias
вы все еще используете Slickgrid?
Навин
24

Мы только что выполнили свою задачу из-за ограниченных требований к функциональности наших сетей Мы используем JQuery здесь и там для некоторых тонкостей, таких как нумерация страниц, и это все, что нам действительно нужно.

Если вам нужно что-то более полнофункциональное, вы можете проверить сетки ExtJs здесь .

Также у MvcContrib есть сеточная реализация, которую вы можете проверить - попробуйте здесь . Или более конкретно здесь .

Берко
источник
2
Также раньше использовал extjs. Очень понравилось, используя его.
Дай Бок
16

Я только что обнаружил, что у Telerik есть несколько замечательных компонентов, включая Grid, и они тоже с открытым исходным кодом. http://demos.telerik.com/aspnet-mvc/

Деян Миличич
источник
9
Я провел последний день, работая с сеткой Telerik, и это очень приятно, если вам удастся остаться на неуловимом «счастливом пути». Тем не менее, мое приложение использует маршрутизацию покоя (т. Е. Когда мои удаления будут публиковаться в "/ controller / {id}" с переопределением метода Http для DELETE), и это, очевидно, было слишком далеко от "счастливого пути" для сетки Telerik для быть полезным для меня, и их код слишком тесно связан, чтобы полностью переопределить его поведение посредством наследования и т. д.
Джеймс Нейл,
10
Следует отметить, что условия их продукта с открытым исходным кодом означают, что его следует использовать только в GPLv2-совместимых проектах с открытым исходным кодом. Это исключает множество коммерческих приложений - если вы хотите остаться легальным :)
Джеймс МакКормак
5
Я никогда не был доволен компонентами Telerik. Они хорошо выглядят и работают со стандартной функциональностью, но все становится хуже, когда вы пытаетесь сделать что-то, что не является частью демонстрации. Вы можете проверить их Kendo UI. Это намного лучше, но все еще не идеально
Максим Козленко
12

Если это просто для просмотра данных, я использую простой foreach или даже aspRepeater. Для редактирования я строю специализированные виды и действия. В любом случае, веб-формам не нравились возможности встроенного редактирования GridView, это намного яснее и лучше - один вид для просмотра, а другой для редактирования / нового.

Hrvoje Hudo
источник
Я согласен. Мне также не нравится встроенное редактирование в сетке.
Рене
1
А с точки зрения UX лучше иметь больше маленьких экранов, чем один большой и сложный. Кроме того, это лучше подходит для хорошего проектирования кода на стороне сервера (OOP), потому что вы можете иметь отдельные поведения для экранных команд, а не один большой db.Save (pageData), переходящий к глаголам в доменной модели, в отличие от «просто» связки модели CRUD методы.
Hrvoje Hudo
Я тоже согласен, так как мне не нравится встроенное редактирование. Разделение интересов облегчает задачу.
Hemal
7

jqGrid стоит $ 299, если вы используете специальную версию, которая имеет интеграцию на стороне сервера, но на самом деле не так сложно использовать бесплатную версию с открытым исходным кодом в ASP.NET MVC, как только вы получите свою конфигурацию jquery, ее почти так же просто использовать, как и любую другую. другая лицензионная сетка:

http://haacked.com/archive/2009/04/14/using-jquery-grid-with-asp.net-mvc.aspx

Мануэль Кастро
источник
7

Вы также можете использовать таблицу вставки / обновления / удаления моего инструментария управления MVC, доступную здесь на codeplex: http://mvccontrolstoolkit.codeplex.com/ . Здесь вы можете скачать полный пример, здесь работает сетка данных и здесь и здесь учебники. DataGrid работает полностью на стороне клиента и поддерживает обмен между постами. Да, он поддерживает Changeset, это означает, что вы можете получить доступ как к старой версии, так и к измененной версии каждой записи, чтобы увидеть, какие изменения следует передать в БД (что нужно изменить, удалить или вставить). Этот набор изменений сохраняется после нескольких сообщений, пока вы не подтвердите или не отмените изменения на стороне сервера.

Франческо Аббруззезе
источник
5

Если это только для чтения, хорошей идеей будет создать таблицу, а затем применить к ней действительно простой, но мощный JQuery.

Для простого альтернативного цвета, попробуйте этот простой JQuery.

Если вам нужна сортировка, этот плагин JQuery просто качается.

Марк Кадлец
источник
1
да. Я видел это. Скотт Хансельман говорил об этом, когда Фил Хэк опубликовал свой код помощника репитера в этой статье: haacked.com/archive/2008/05/03/…
MikeJ
1
Я думаю, что так я узнал и о первой ссылке! Большая часть сетки, которую я делаю сейчас, в основном делается на клиенте. Совет Скотта был хорошо взят.
Марк Кадлец
4

Я попробовал здесь пример сетки Mvc Controls Toolkit. Похоже, довольно мощный и простой в использовании сетка. Учебное пособие не только объясняет, как использовать сетку, но и как выполнять разбиение по страницам, организовать модель представления и аннотации данных. Это стоит прочитать.

MvcSurfer
источник
2

Проверьте сетку из элементов управления Infragistics jQuery

Вот пример ASP.NET MVC с кодом:

http://labs.infragistics.com/aspnet-mvc/Grid/AllFeatures

akshayl
источник
Спасибо. Добавлю в список выше.
MikeJ
Майк, ты можешь добавить следующее в список: infragistics.com/dotnet/netadvantage/jquery-controls/grid.aspx
akshayl
Я обновил со ссылкой на igGrid от Infragistics. извините за задержку, так как я отсутствовал на день благодарения. igGrid выглядит интересно.
MikeJ
1
Исходя из того, кто пытался использовать это в производственном приложении, я бы не рекомендовал эту сетку. Он глючит, плохо документирован и практически не поддерживается сообществом, возможно потому, что он не с открытым исходным кодом. Большинство функций (сортировка, изменение размера столбцов и т. Д.) Имеют проблемы с ними, которые включают различные обходные пути и компромиссы. Сетка Winforms Infragistics, которую мы использовали в прошлом, прекрасно работала, но я бы держался подальше от их веб-версии, пока она не станет более запеченной.
Джош Ноу