Как отобразить / скрыть меню на основе типа пользователя с помощью asp.net Сессия MVC

#asp.net-mvc

#asp.net-mvc

Вопрос:

Я хочу показать / скрыть свои навигационные меню на основе типа пользователя, полученного сеансом. я могу получить тип пользователя с помощью сеанса, но пока я его проверяю, он не отображает меню для любого типа пользователей. ниже приведен мой код. пожалуйста, помогите, спасибо

Мой сеанс в контроллере

 //get user login user ID;
        string uname = User.Identity.Name;
        var obj= db.Users.Where(x => x.Username.Equals(uname)).FirstOrDefault();
        if (obj != null)
        {

            Session["userType"] = obj.UserType;

        }
  

мои элементы навигации проверяются сеансом

 @if(Session["userType"]=="1"){
                         <li class="dropdown">
                            <a href="#" class="dropdown-toggle" data-toggle="dropdown">Projects Management <span class="caret"></span></a>
                            <ul class="dropdown-menu" role="menu">
                                <li><a href="@Url.Action("Index", "packages", new { ID = "" })">Packages</a></li>
                                <li><a href="@Url.Action("Index", "Lot", new { ID = "" })">Lots</a></li>
                                <li><a href="@Url.Action("Index", "Projects", new { ID = "" })">Projects</a></li>

                            </ul>
                        </li>
                        }
  

Комментарии:

1. Session["userType"] возвращает object , поэтому вам нужно его использовать — например @if((int)Session["userType"]==1)

2. спасибо, это помогло мне.