irfanansari Ответов: 2

Как использовать динамические меню из базы данных в ASP.NET


любой может направить и помочь в этом случае создать динамически левое выпадающее меню с css и базой данных и asp.net

Что я уже пробовал:

я никогда не пробовал, но я хочу создать и связать его dabatase для создания правила для пользователей и меню доступа администратора

2 Ответов

Рейтинг:
5

Afzaal Ahmad Zeeshan

Цитата:
в этом случае
В каком случае?

Динамические меню могут быть созданы легко, вы можете использовать запрос, который извлекает все записи меню из таблицы базы данных, а затем генерировать меню на основе этого. Например, вот пример таблицы,
| MenuId | MenuPlacing |
|--------|-------------|
| 1      | Navigation  |
| 2      | Footer      | 
| 3      | Post        |
Вы можете видеть, что вместо того, чтобы создавать меню, я создал список, который поможет мне выбрать нужный тип меню. Теперь это можно использовать для дальнейшего добавления пунктов меню,
| MenuItemId | MenuId | Heading | Tooltip     | Hyperlink  | Active |
|------------|--------|---------|-------------|------------|--------|
| 1          | 1      | Home    | Home page   | "/"        | true   |
| 2          | 1      | About   | Our company | "/about"   | true   |
| 3          | 1      | Contact | Reach us    | "/contact" | true   |
| 4          | 1      | Sales   | Sales team  | "/sales"   | true   |
Такие таблицы могут помочь вам использовать поисковый запрос в SQL и получить записи для конкретного меню. Затем вы можете визуализировать данные на HTML с помощью foreach предположим, что после ответа у вас есть переменная, содержащая выходные данные таблицы MenuItem. Вы можете выполнить итерацию по результату и отобразить список,
<ul>
    @foreach (var menuItem in menuItemList) {
        if(menuItem.Active) {
            <li>
                 <a href="@menuItem.Hyperlink" title="@menuItem.Tooltip">
                     @menuItem.Heading
                 </a>
            </li>
        }
    }
</ul>
Это позволит настроить список элементов, которые вы выбрали из своей базы данных.

Вы можете проверить мою статью о соединениях SQL Server с языком C# , Как подключить базу данных SQL к вашей программе C#, учебник для начинающих[^].


MadMyche

Я считаю, что O/P хочет, чтобы меню менялось в зависимости от входа в систему: для меню Создать правило для пользователей и доступа администратора

irfanansari

сэр, это я думаю, что в MVC, сэр, можете вы сказать несколько руководство в простой asp.net пожалуйста, и вы сказали, хороший способ, только мне нужно в этом же подразделе menew, как
| MenuItemId | MenuId | Заголовок | Всплывающая Подсказка | Гиперссылка | Активный |
|------------|--------|---------|-------------|------------|--------|
| 1 | 1 | Главная страница | Главная страница / " / " | true |
| 2 | 1 | О компании | наша компания / "/о компании" | true |
| 3 | 1 | свяжитесь с нами | свяжитесь с нами / "/контакт" | true |
| 4 | 1 | продажи | отдел продаж | "/Продажи" | true |
| 5 | 4 |"наличные продажи|продажи наличной |"/продажи наличной"| правда |

после продажи основного меню и продажи наличных подменю

Afzaal Ahmad Zeeshan

Используя ту же концепцию, вам просто нужно выполнить SQL-запрос, чтобы получить меню, а затем визуализировать его, как я показал, используя цикл foreach.

Вы должны прочитать мою статью, чтобы узнать о SQL-запросе и коде C#, а также использовать foreach для визуализации выходных данных. Попробуйте показать код, который вы использовали.

irfanansari

сэр, я уже создаю базу данных и querry для select * from Menew, и таблица моя, как показано ниже
SR_NO Menew Page_link MenuId активен
1 домашний.aspx в нуль верно
2 Про про.aspx в нуль верно
3 продажа null TRUE
4 продажа наличных денег cash.aspx 3 TRUE
5 installemnt продажа HP.aspx 3 TRUE
6 свяжитесь с нами contactus.aspx null TRUE

Afzaal Ahmad Zeeshan

И что же?

irfanansari

просто мне нужна помощь в логике на стороне asp.net как позвонить в офис

Рейтинг:
13

MadMyche

То, что вы хотите сделать некоторые исследования, будет Авторизация На Основе Ролей В этом разделе рассматриваются пользователи и их соответствующие роли, а также связанные с ними разрешения на то, что они могут делать .

Методы здесь, возможно, специфичны для приложений NetCore 3.0, но общий функциональный поток будет таким же
Ролевая авторизация в системе ASP.NET ядро | Microsoft Docs[^]



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