类似于Asp.Net核心页面中WebForms的LoginView
我一直在搜索,但在razor页面中找不到任何关于登录视图的信息。我喜欢登录视图和基于角色分离模板的简单程度。有没有办法在剃须刀页面中做到这一点 下面是来自webforms示例的LoginView类似于Asp.Net核心页面中WebForms的LoginView,asp.net,webforms,razor-pages,asp.net-core-2.2,loginview,Asp.net,Webforms,Razor Pages,Asp.net Core 2.2,Loginview,我一直在搜索,但在razor页面中找不到任何关于登录视图的信息。我喜欢登录视图和基于角色分离模板的简单程度。有没有办法在剃须刀页面中做到这一点 下面是来自webforms示例的LoginView <asp:LoginView runat="server"> <RoleGroups> <asp:RoleGroups Roles="Admin"> <ContentTemplate>
<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一般来说,在您的视图中,您可以使用
User.IsInRole
:
@if (User.IsInRole("Admin"))
{
@:Welcome Admin
}
@if (User.IsInRole("User"))
{
@:Welcome User
}
现在,在创建可重用视图方面,您可以使用局部视图或视图组件。对于这个特定场景,局部视图应该足够了。当您需要注入依赖项、执行自定义查询或其他高级逻辑时,视图组件更合适,这里不需要这些
因此,创建一个新的Razor视图,如\u Login.cshtml
,并将代码放在那里。然后,在要显示该内容的位置,例如在布局中:
<partial name="_Login" />
通常,在视图中,您可以使用
User.IsInRole
:
@if (User.IsInRole("Admin"))
{
@:Welcome Admin
}
@if (User.IsInRole("User"))
{
@:Welcome User
}
现在,在创建可重用视图方面,您可以使用局部视图或视图组件。对于这个特定场景,局部视图应该足够了。当您需要注入依赖项、执行自定义查询或其他高级逻辑时,视图组件更合适,这里不需要这些
因此,创建一个新的Razor视图,如\u Login.cshtml
,并将代码放在那里。然后,在要显示该内容的位置,例如在布局中:
<partial name="_Login" />
您的问题非常不清楚。请修改并详细说明您想要的内容。如果您能找到,请提供实际示例。另外,请检查并相应地组织您的问题。已编辑的主要帖子您的问题非常不清楚。请修改并详细说明您想要的内容。如果您能找到,请提供实际示例。另外,请检查并相应地组织您的问题。已经编辑了主要的PostInterest,我仍然非常不熟悉使用razor的MVVM或MVC方式,因为我来自web表单。与LoginView相比,它看起来非常简单和有效,在LoginView中,如果不编写一堆代码就无法访问控件内部的控件。有趣的是,我对使用razor实现这一点的MVVM或MVC方法仍然非常陌生,因为我来自web表单。与LoginView相比,它看起来非常简单和有效,在LoginView中,如果不编写一堆代码,就无法访问其中的控件