C# 定义不同的登录页面web.config

C# 定义不同的登录页面web.config,c#,asp.net-mvc,asp.net-membership,umbraco7,authorize,C#,Asp.net Mvc,Asp.net Membership,Umbraco7,Authorize,我用的是Umbraco 7 我有两种不同类型的成员:比如说MemberTypeOne和MemberTypeTwo 在web.config中,我定义了默认登录页面,以防视图被标记为[MemberAuthorize] <authentication mode="Forms"> <forms name="yourAuthCookie" loginUrl="login.aspx" protection="All" path="/" /> </authen

我用的是Umbraco 7

我有两种不同类型的成员:比如说
MemberTypeOne
MemberTypeTwo

web.config
中,我定义了默认登录页面,以防视图被标记为
[MemberAuthorize]

<authentication mode="Forms">
      <forms name="yourAuthCookie" loginUrl="login.aspx" protection="All" path="/" />
    </authentication>

我想为每个成员类型定义两个不同的登录页面,例如,
MemberTypeOne
将是
/login member one.aspx
,如果相关用户未通过身份验证,
MemberTypeTwo
将是
/login member two.aspx


我可以和如何实现它?感谢在
login.aspx
页面中为两种成员类型定义您的所有内容,但是在不同的面板中,比如
PanelOne
用于
MemberTypeOne
PanelTwo
用于
MemberTypeTwo

接下来,在代码隐藏文件中的
Page\u Load
事件期间,确定成员的类型并相应地设置两个面板的可见性。即,如果成员类型为
MemberTypeOne
set
Panel1.Visible=True
Panel2.Visible=False

请注意,设置服务器端控件
Visible
属性会导致它根本不会写入响应

如果要根据路径区分成员类型,只需为登录页面提供不同的查询字符串即可。例如

MemberTypeOne
登录链接可以是
/login.aspx?membertype=1

MemberTypeTwo
登录链接可以是
/login.aspx?membertype=2

更新
由于布局需要加载不同的母版页,因此需要将响应重定向到另一个页面,从而重新开始整个页面生命周期。我的意思是,您可以使用
login.aspx
作为登录过程的起点。在
页面加载期间
,检查成员类型并执行
服务器。将
转移到相应页面。

为什么不能同时执行两种成员类型(“角色”)的操作通过相同的表单登录?因为他们的内容不同,一个使用主站点,另一个使用umbraco内的微型站点。用户登录后,您就知道了成员类型。在展示正确的登录页面之前,您如何知道?因为登录页面是两个不同的页面??我认为现在不应该担心,谢谢,但我不能。他们使用不同的母版,不同的布局,不同的任何东西。一个登录页不是选项位于不同文件夹/名称空间下的两种成员类型的受保护页是否都是?如果是这样,您可以在每个文件夹中定义不同的
web.config
文件,其中包含受保护的资源…在重定向到web.config的登录页面后,我无法检查成员类型