登录重定向ASP.NET

登录重定向ASP.NET,asp.net,authentication,redirect,login,Asp.net,Authentication,Redirect,Login,我需要一些帮助来重定向VisualStudio中的标准登录工具 我的项目使用的是web ASP.configuration工具&我使用的是Visual Studio 2010中提供的标准工具 我有角色设置,每个角色在项目中都有自己的文件夹,需要根据其登录重新定向 例如,当管理员登录时,应将其重定向到~/admin/default.aspx 我在按钮上尝试了一些代码,但似乎无法使其工作 下面是我的代码: protected void Login1_Authenticate(object sende

我需要一些帮助来重定向VisualStudio中的标准登录工具

我的项目使用的是web ASP.configuration工具&我使用的是Visual Studio 2010中提供的标准工具

我有角色设置,每个角色在项目中都有自己的文件夹,需要根据其登录重新定向

例如,当管理员登录时,应将其重定向到
~/admin/default.aspx
我在按钮上尝试了一些代码,但似乎无法使其工作

下面是我的代码:

protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
    {
        if (Membership.ValidateUser(Login1.UserName, Login1.Password))
        {
            if (Roles.IsUserInRole(Login1.UserName, "Admin"))
            {
               Response.Redirect("~/Admin/Default.aspx");
            }
            else if (Roles.IsUserInRole(Login1.UserName, "User"))
            {
               Response.Redirect("~/User/Default.aspx");
            }               
        }
    }
有什么帮助吗


J

您需要将
authenticateventargs
参数Authenticated设置为true,以告知系统用户已通过身份验证。但是,您需要当前请求才能继续,以便设置正确的身份验证cookie,因此您希望调用
Response.Redirect(…,false)
不知道如何执行您要求的操作?您怎么可能不知道如何执行我说的操作?如果你不这样做,那你就有点不知所措了,很可能应该去读书或上一门课。这是最基本的,在参数对象上设置一个布尔值,然后在方法调用中添加一个false。谢谢你的反馈,我想我会读一本书或参加一门课程(这是一种爱好&我并不假装是专业人士),你觉得在你的响应中添加“false”到底有什么难懂的地方。重定向?或者键入“e.Authenticated=true;”?这不是“专业”的东西,它太基本了,“你好世界”更复杂。