首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >类似于Asp.Net核心剃刀页面中来自WebForms的LoginView

问类似于Asp.Net核心剃刀页面中来自WebForms的LoginView
EN

Stack Overflow用户
提问于 2019-03-20 18:37:36
回答 1查看 127关注 0票数 0

我一直在搜索,但在剃刀页面中找不到任何关于登录视图的信息。我喜欢登录视图,以及根据角色分离模板是多么容易。有没有办法在剃刀页面中做到这一点?

下面是webforms示例中的LoginView

代码语言:javascript
复制
<asp:LoginView runat="server">
    <RoleGroups>
        <asp:RoleGroups Roles="Admin">    
            <ContentTemplate>            
                Welcome Admin

            </ContentTemplate>
        </asp:RoleGroups>
        <asp:RoleGroups Roles="User">    
            <ContentTemplate> 
                Welcome User     

            </ContentTemplate>            
        </asp:RoleGroups>
    </RoleGroups>
</asp:LoginView>

基本上如何根据用户的角色为他们呈现不同的html

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-20 22:45:18

通常,在您的视图中,可以使用User.IsInRole

代码语言:javascript
复制
@if (User.IsInRole("Admin"))
{
    @:Welcome Admin
}

@if (User.IsInRole("User"))
{
    @:Welcome User
}

现在,就创建可重用视图而言,您要么希望使用局部视图,要么希望使用视图组件。对于这个特定的场景,局部视图应该足够了。当您需要注入依赖项、执行自定义查询或其他高级逻辑时,视图组件更合适,而这些在这里都不是必需的。

因此,创建一个像_Login.cshtml这样的新Razor视图,并将您的代码放在那里。然后,在您想要显示该内容的位置,例如在布局中:

代码语言:javascript
复制
<partial name="_Login" />
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55258740

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档