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

Многомерное меню из БД ASP.NET MVC 4

21.03.2013, 17:42. Показов 1661. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Недавно перешел с пхп на ASP.NET MVC.
Все понятно. Удобно.Красиво.
Но столкнулся с проблемой - не могу сформировать и вывести дерево меню, хранящееся в БД.
Искал в гугле, на мсдн.

В пхп я делал так:
Таблица "Menu" с полями MenuID, ParentID, Name. Потом вытаскивал, забивал в массив такого вида рекурсивно

PHP
1
2
3
4
5
6
7
8
9
10
$pagesArray[$content_id]= array(
                                        'type'  => 'mvc',  
                                        'label' => $title,                                                                             
                                        'id'    => $content_id,                                        
                                        'route' => $this->LowerCase.'/default',                 //    /default  - обязательно, иначе не работает
                                        'params'=> array(                                       //    /news/$content_id ....
                                                        'id' => $content_id ,                       
                                                        ),
                                        'pages' => $this->createArrayForNav(  $id ),                             
                                        );
и потом во вьюхе спокойно выводил.

Сейчас получаю из БД Лист
C#
1
var data = db.Menuds.ToList();
а вот что дальше с ним делать хз.
Пробовал так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
        public ActionResult Sort()
        {
            var data = db.Menuds.ToList();
            var dic = new Dictionary<int, IEnumerable<dub.Models.Menud>>();
 
            foreach (var i in data)
            {
                
                    var lowNums =   from n in data
                                    where n.ParentID == i.ParentID
                                    select n;
 
                    dic[i.ParentID] = lowNums;
                    ViewBag.lowNums = lowNums;
            }
 
            return View(dic);
        }
Впринцыпе подходит. Но во вьюхе я не могу получить доступ к полям. Точнее выводит только MenuID:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
@model Dictionary<int, IEnumerable<dub.Models.Menud>>
 
@{
    ViewBag.Title = "Sort";
    
}
 
<h2>Sort</h2>
 
<table>
 
 
@foreach (var item in Model) {
    <tr>
        <td>
            @Html.DisplayFor(modelItem => item.Key)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.Value)
        </td>
    </tr>
}
</table>
Можно как сделать, что б было так:
HTML5
1
2
@Html.DisplayFor(modelItem => item.Value.ParentId)
@Html.DisplayFor(modelItem => item.Value.Name)
?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.03.2013, 17:42
Ответы с готовыми решениями:

ASP.NET MVC 4,ASP.NET MVC 4.5 и ASP.NET MVC 5 большая ли разница между ними?
Начал во всю осваивать технологию,теперь хочу с книжкой посидеть и вдумчиво перебрать всё то что...

Стоит ли изучать asp.net mvc 4 из за скорого выхода asn.net mvc vNext ?
Доброго вечера! Как я узнал, Microsoft скоро планирует выпустить новый веб-фреймворк с названием...

Стоит ли изучать ASP.NET MVC 4 не зная просто ASP.NET?
Стоит ли сразу изучать ASP.NET MVC не зная просто ASP.NET? И еще вопрос: мне нужно освоить MVC...

ASP.net MVC против MVC обычного
Здраствуйте, читая книгу &quot;Сандерсон С - ASP.NET MVC3 Framework с примерами на C# для...

1
98 / 96 / 15
Регистрация: 28.03.2011
Сообщений: 565
26.03.2013, 20:51 2
В данном случае можно использовать библиотеку jstree.js
0
26.03.2013, 20:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.03.2013, 20:51
Помогаю со студенческими работами здесь

Перенос с ASP.NET на ASP.NET MVC
Доброго времени суток! Вопрос в следующем: имеются файлы проекта на ASP.NET и действующий проект...

JS+ASP.NET MVC
Доброго времени суток, возникла следующая проблема. Необходимо реализовать чат на клиенте, чат...

ASP.Net MVC 2
Доброго всем времени суток! такая проблема: есть проект на mvc, нужно перевести его на mvc2....

ASP.NET MVC
Всем привет. Мне дали пустой мвс проект, нужно сделать функцию просмотра пользователей. Как это...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru