Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
7 / 7 / 0
Регистрация: 18.11.2011
Сообщений: 150

Отображение табличных данных в MVC

30.12.2011, 14:54. Показов 3496. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Подскажите, каким образом можно отобразить таблицу базы данных в mvc. На сколько я знаю, в mvc нет возможности использовать gridView и другие контролы.

Большое спасибо за советы!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.12.2011, 14:54
Ответы с готовыми решениями:

MVC 4 отображение данных из базы
Делаю статейник и не могу разобраться как в MVC 4 сделать вывод полной новости из базы данных. То есть, к примеру в dle когда мы создаем...

ASP MVC 5 jqGrid treegrid - отображение данных
Всем привет, MVC начал изучать совсем недавно. Мне нужно отображать категории и подкатегории в моей системе ввиде дерева. С обычным JQGrid...

Отображение табличных данных
Уважаемые форумчане! Прошу помочь начинающему программисту. Надо отобразить данные в виде таблицы. Пробовал использовать DataGridView,...

17
19 / 19 / 5
Регистрация: 19.07.2011
Сообщений: 113
30.12.2011, 15:55
Вот тренинги по MVC, где подробно показывают, что и как http://www.techdays.ru/Categor... bFramework
1
7 / 7 / 0
Регистрация: 18.11.2011
Сообщений: 150
30.12.2011, 20:27  [ТС]
Спасибо. Хороший сайт.)

Скажите, а как передать две модели в директиву @model? То есть, у меня есть две коллекции IEnuberable, одну из них я передаю во View (через returnView(коллекция)), и уже во вьюхе отображаю данные в таблицу. А как поступить, если нужно построить несколько таблиц по нескольким коллекциям?
0
CEO
Эксперт С++
 Аватар для Alligieri
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
30.12.2011, 22:16
DroidAn, как вариант - создать ViewModel с 2мя пропертями-коллекциями и передавать эту модель во вьюху
1
7 / 7 / 0
Регистрация: 18.11.2011
Сообщений: 150
01.01.2012, 02:28  [ТС]
Всех с Наступившим Новым Годом.)

Интересно, как определить строку, в которой была нажата клавиша? Таблицу отображаю через тег <table />.

Например, нажав select в первой строке, как определить значение первого столбца?
Изображения
 
0
CEO
Эксперт С++
 Аватар для Alligieri
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
01.01.2012, 17:32
DroidAn, для каждой записи создаем форму с вызовом нужного екшена (например Select) и параметром id, пихаем туда кнопку submit и радуемся Новому Году)))
1
7 / 7 / 0
Регистрация: 18.11.2011
Сообщений: 150
01.01.2012, 20:05  [ТС]
Alligieri, я Вас правильно понял?

HTML5
1
2
3
4
5
6
7
8
9
10
@foreach (var item in Model)
    {
        @Html.BeginForm("Click", "Home")
        {
        <tr>
            <th>@item.Id</th>
            <th><input type="submit" value="Select"  /></th>
        </tr>
   }
    }
0
CEO
Эксперт С++
 Аватар для Alligieri
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
01.01.2012, 21:37
DroidAn, оборачивайте формой только submit уже внутри ячейки, а id можно засунуть как hidden поле (так форма на разметку влиять не будет)
1
7 / 7 / 0
Регистрация: 18.11.2011
Сообщений: 150
01.01.2012, 23:41  [ТС]
Alligieri, скажите, а куда записывается нужный айдишник после нажатия на select, то есть где его можно получить, для дальнейшей работы?
0
CEO
Эксперт С++
 Аватар для Alligieri
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
01.01.2012, 23:44
DroidAn, вам нужно определить id кк входной параметр метода екшена который вызвет форма с сабмитом.

C#
1
public void Select(int id)
XML
1
2
3
4
5
6
7
8
9
10
11
@foreach (var item in Model)
    {
                <tr>
            <td>@item.Id</td>
            <td>@Html.BeginForm("Select", "Home")
        {
<input type="hidden" value="@item.Id" name="id" />
<input type="submit" value="Select"  />}</td>
        </tr>
   
    }
1
7 / 7 / 0
Регистрация: 18.11.2011
Сообщений: 150
02.01.2012, 11:59  [ТС]
Alligieri, у меня очень интересно получается - при нажатии на любой селект из таблицы в метод Select контроллера передаётся id = 1.

Может я что-то не правильно в методе описал?

C#
1
2
3
4
5
6
7
        public ActionResult Select(int id)
        {
            var session = Config.OpenSession();
            var customers = session.Query<Customers>().Where(x => x.ProductId == id);
            
            return View(customers);
        }
Добавлено через 1 минуту
то есть входной id равен всегда единице.

Добавлено через 14 минут
Из своей базы данных удалил запись с айдишником, равным единице.. И при отладке выяснилось, что на вход методу приходит всё равно значение "1"..
0
CEO
Эксперт С++
 Аватар для Alligieri
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
02.01.2012, 12:29
DroidAn, покажите код с View
1
7 / 7 / 0
Регистрация: 18.11.2011
Сообщений: 150
02.01.2012, 12:35  [ТС]
Код представления:

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
@model IEnumerable<MyFirstMvcApplication.Entities.Product>
<div align="center" style="margin-left: 40%; margin-top: 5%; width: 250px; height: 250px;
    background-color: #f0f0f0; border-radius: 10px">
    <table>
        <tr>
            <td>
                Id
            </td>
            <td>
                Name
            </td>
            <td>
                Price
            </td>
        </tr>
        @foreach (var item in Model)
        {
            <tr>
                <td>@item.Id
                </td>
                <td>@item.Name
                </td>
                <td>@item.Price
                </td>
                <td>@Html.BeginForm("Select", "Home")
                    @{
                        <input type="submit" value="Select" />
                        <input type="hidden" value="@item.Id" name="id" />
                    }
                </td>
            </tr>
        }
    </table>
</div>
0
CEO
Эксперт С++
 Аватар для Alligieri
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
02.01.2012, 13:11
Цитата Сообщение от DroidAn Посмотреть сообщение
<td>@Html.BeginForm("Select", "Home")
@{
<input type="submit" value="Select" />
<input type="hidden" value="@item.Id" name="id" />
}
</td>
Попробуйте заменить на
HTML5
1
2
3
4
5
6
<td>@using(Html.BeginForm("Select", "Home"))
 {
 <input type="submit" value="Select" />
 <input type="hidden" value="@item.Id" name="id" />
 }
 </td>
1
7 / 7 / 0
Регистрация: 18.11.2011
Сообщений: 150
02.01.2012, 15:47  [ТС]
Заработало! Большое спасибо за помощь и пояснения.)

Добавлено через 2 часа 32 минуты
Возник ещё один вопрос.)

Например, в контроллере есть стандартное действие Index(), которое выводит некоторую табличную информацию в представление Index. В этом же контроллере есть действие Delete(), результат которого - удаление записи из БД. Соответственно в каждой строке таблицы есть кнопка Delete.

Как можно после нажатия на кнопку удаления, перенаправить пользователя обратно в представление Index?
0
CEO
Эксперт С++
 Аватар для Alligieri
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
02.01.2012, 17:00
Цитата Сообщение от DroidAn Посмотреть сообщение
перенаправить пользователя обратно в представление Index?
вы же сами себе ответили)))
C#
1
return RedirectToAction("Index");
1
7 / 7 / 0
Регистрация: 18.11.2011
Сообщений: 150
02.01.2012, 19:19  [ТС]
Действительно =)
0
4 / 4 / 5
Регистрация: 31.05.2011
Сообщений: 23
11.01.2012, 23:26
Если еще актуально - посмотрите в сторону компонентов Telerik для MVC Framework
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.01.2012, 23:26
Помогаю со студенческими работами здесь

Сортировка табличных данных
Приятного времени суток, форумчане! Не могу понять как сделать сортировку данных. Смотрел туториалы нa...

Запрос табличных данных
Есть программа, она обращаясь к длл передает в виде char* некоторый набор параметров и псевдоним по которому в дальнейшем будет обращаться...

Хранение табличных данных
Есть задача: сервис, чтобы пользователь мог создавать произвольные таблицы типа экселевских на сайте. И вопрос, скорее по архитектуре: как...

Вёрстка табличных данных
Как сделать как на картинке? Это должна быть таблица без использования css.

Интерполяция табличных данных
У меня есть таблица со значениями нескольких переменных. Мне нужно найти значения коэффициента n для промежуточного значения...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru