C# 登录时显示不同的页面

C# 登录时显示不同的页面,c#,.net,asp.net,authentication,login-control,C#,.net,Asp.net,Authentication,Login Control,现在,当用户登录时,他们会在同一页面上看到特定内容: <asp:LoginView ID="LoginView" runat="server"> <AnonymousTemplate> Please login <br /> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$

现在,当用户登录时,他们会在同一页面上看到特定内容:

<asp:LoginView ID="LoginView" runat="server">
    <AnonymousTemplate>
    Please login <br />        
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
            ConnectionString="<%$ ConnectionStrings:qcvalues_testConnectionString %>" 
            SelectCommand="SELECT * FROM [batchinfo]"></asp:SqlDataSource>
    <asp:Login ID="LoginControl" runat="server" />


    </AnonymousTemplate>
    <LoggedInTemplate>    you are logged in </LoggedInTemplate> ................

请登录
您已登录。。。。。。。。。。。。。。。。
如果我执行
Response.Redirect()
到另一个页面,比如说
default2.aspx
-我如何确保用户除非登录,否则无权访问
default2.aspx


但是,我希望用户在登录时被引导到不同的页面

LoggedIn
当用户成功登录时触发事件。e、 g

protected void Login1_LoggedIn(object sender, EventArgs e)
{
    Response.Redirect("Page.aspx");
}
编辑:参考您的评论,如果您在web.config的
部分下添加以下代码,它将确保未经验证的
用户将无法访问您的页面

<location path="FolderNameIfAny/Page.aspx">
    <system.web>
        <authorization>
            <deny users="?"/>               
        </authorization>
    </system.web>
</location>

您可以允许特定角色访问特定文件夹。

LoggedIn
当用户成功登录时触发事件。e、 g

protected void Login1_LoggedIn(object sender, EventArgs e)
{
    Response.Redirect("Page.aspx");
}
编辑:参考您的评论,如果您在web.config的
部分下添加以下代码,它将确保未经验证的
用户将无法访问您的页面

<location path="FolderNameIfAny/Page.aspx">
    <system.web>
        <authorization>
            <deny users="?"/>               
        </authorization>
    </system.web>
</location>

您可以允许特定角色访问特定文件夹。

确保您的web.config中有一个带有
的授权部分,以防止未经身份验证的用户访问您的网站


Forms auth确实有一种重定向到其他页面的方法,但我不确定如何使用登录控件进行重定向。

请确保您的web.config中有一个带有
的授权部分,以防止未经身份验证的用户访问您的网站


Forms auth确实有一种重定向到其他页面的方法,但我不确定您如何使用登录控件进行重定向。

@jjd谢谢,我在bottom@jjd也是初学者,我把response.redirect放在哪里?一旦用户成功登录,您就可以设置一个布尔会话标志,如
session(“bnLoggedIn”)=真
。然后在其他页面的顶部,你可以说
,如果bnLoggedIn=False,那么就说Response.Redirect(“其他页面”)
@jjd谢谢你,我在下面加了几句话bottom@jjd也是初学者,我把response.redirect放在哪里?一旦用户成功登录,您就可以设置一个布尔会话标志,如
session(“bnLoggedIn”)=真
。然后在其他页面的顶部,您可以说
如果bnLoggedIn=False,那么Response.Redirect(“其他页面”)
如何确保只有登录的用户才能访问www.mysite.com/page.aspx?非常感谢,我如何拥有多个与多个规则关联的文件夹。另一个词role1有权访问folder1,role2有权访问folder2根据您的第二条评论再次更新我的答案。谢谢!如何为同一位置允许多个角色?这样地?您看到我为FolderName2位置添加的内容了吗?您可以在特定文件夹中提到逗号分隔的角色。如何确保只有登录的用户才能访问www.mysite.com/page.aspx?非常感谢,我如何拥有多个与多个规则关联的文件夹。另一个词role1有权访问folder1,role2有权访问folder2根据您的第二条评论再次更新我的答案。谢谢!如何为同一位置允许多个角色?这样地?您看到我为FolderName2位置添加的内容了吗?您可以将逗号分隔的角色提到特定文件夹。