'Loading Asp.net Menu depending on user role from SQL database
I'm trying to create a web application using ASP.net, and I'm using asp menus I dragged from the options VS gives me...
<asp:Menu ID="menu_header" runat="server" DynamicHorizontalOffset="2" Font-Names="Verdana" Font-Size="0.8em" ForeColor="#990000" ItemWrap="True" Orientation="Horizontal" StaticSubMenuIndent="10px">
<Items>
<asp:MenuItem Text="Información Personal" Value="Información Personal">
<asp:MenuItem NavigateUrl="~/Pantallas/Asociados/wfrm_Perfil.aspx" Text="Perfil del usuario" Value="Perfil del usuario"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Pantallas/Asociados/wfrm_EstCuenta.aspx" Text="Estado de cuenta" Value="Estado de cuenta"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Pantallas/Asociados/wfrm_Movimientos.aspx" Text="Movimientos" Value="Movimientos"></asp:MenuItem>
</asp:MenuItem>
<asp:MenuItem Text="Ahorros" Value="Ahorros">
<asp:MenuItem NavigateUrl="~/Pantallas/Ahorros/wfrm_MisAhorros.aspx" Text="Mis Ahorros" Value="Mis Ahorros"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Pantallas/Ahorros/wfrm_MatAhorros.aspx" Text="Matricular ahorro" Value="Matricular ahorro"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Pantallas/Ahorros/wfrm_RetAhorros.aspx" Text="Retirar Ahorros" Value="Retirar Ahorros"></asp:MenuItem>
</asp:MenuItem>
</Items>
</asp:Menu>
After getting the role from the user that logged to the app, I don't know how to load MenuItems depending on the user roles I get from SQL.
What do you recommend me to do?
Solution 1:[1]
You can use the following code to display Menu Items.
<% if (Context.User.Identity.IsAuthenticated && Context.User.IsInRole("Admin")) {%>
//Menu Items
<%} else if (Context.User.Identity.IsAuthenticated && Context.User.IsInRole("User")){%>
//Menu Items
<%}%>
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | M Rizwan |
