如何在asp.net mvc中区分普通用户和管理员

时间:2021-02-21 17:32:43

标签: c# asp.net asp.net-mvc

我正在做一个 asp.net mvc 项目,我想区分用户会话和管理会话。

在我的初始视图中,我使用以下代码来区分登录用户和非登录用户:

    <ul class="nav navbar-nav" style="float:right !important">
        @if (Request.IsAuthenticated)
        {
            using (Html.BeginForm("Logout", "User", FormMethod.Post, new { id = "logoutForm" }))
            {
                <div class="dropdown">
                    <button class="dropbtn">Bem vindo à nossa loja, @Session["FirstName"]</button>

                    <div class="dropdown-content">
                        <a href="javascript:document.getElementById('logoutForm').submit()">Logout</a>
                        <a>@Html.ActionLink("Editar Perfil", "Profile", "User")</a>
                    </div>
                    }

                </div>
            }

            <div>

                <a>@Html.ActionLink("E-Commerce", "ECommerce", "User")</a>
                <a>@Html.ActionLink("Agendar Visita", "Booking", "User")</a>
            </div>
        }
        else
        {
            <li>@Html.ActionLink("Sobre", "About", "User")</li>
            <li>@Html.ActionLink("Registo", "Registration", "User")</li>
            <li>@Html.ActionLink("Entrar", "Login", "User")</li>
        }
    </ul>

尝试使用相同的方法来区分用户会话和管理会话,我已经这样做了:

<ul class="nav navbar-nav" style="float:right !important">
                    @if (Request.IsAuthenticated)
                    {
                        if (@Session["FirstName"] == "admin")
                        {
                            using (Html.BeginForm("Logout", "User", FormMethod.Post, new { id = "logoutForm" }))
                            {
                                <div class="dropdown">
                                    <button class="dropbtn">Bem vindo, admin</button>

                                    <div class="dropdown-content">
                                        <a href="javascript:document.getElementById('logoutForm').submit()">Logout</a>
                                    </div>
                                    }

                                </div>
                            }

                            <div>

                                <a>@Html.ActionLink("Configurar Layoyt", "ConfLayout", "Admin")</a>
                                <a>@Html.ActionLink("Adicionar Website", "AddWebsite", "Admin")</a>
                            </div>
                        }
                        else
                        {
                            using (Html.BeginForm("Logout", "User", FormMethod.Post, new { id = "logoutForm" }))
                            {
                                <div class="dropdown">
                                    <button class="dropbtn">Bem vindo à nossa loja, @Session["FirstName"]</button>

                                    <div class="dropdown-content">
                                        <a href="javascript:document.getElementById('logoutForm').submit()">Logout</a>
                                        <a>@Html.ActionLink("Editar Perfil", "Profile", "User")</a>
                                    </div>
                                    }

                                </div>
                            }

                            <div>

                                <a>@Html.ActionLink("E-Commerce", "ECommerce", "User")</a>
                                <a>@Html.ActionLink("Agendar Visita", "Booking", "User")</a>
                            </div>
                        }

                    }
                    else
                    {
                        <li>@Html.ActionLink("Sobre", "About", "User")</li>
                        <li>@Html.ActionLink("Registo", "Registration", "User")</li>
                        <li>@Html.ActionLink("Entrar", "Login", "User")</li>
                    }
                </ul>

...但这并没有解决我的问题。

我使用的方法正确吗?

0 个答案:

没有答案
相关问题