登录后发送用户回到他所在的页面?

时间:2011-05-11 09:08:50

标签: .net asp.net asp.net-membership forms-authentication login-control

我正在使用登录控件,登录按钮位于母版页中。

我有一个页面(例如page1.aspx),用户可以登录并且无需登录。

如果用户在该page1.aspx中并单击登录按钮,则在成功登录后,我希望系统将用户带回page1.aspx。

但是现在成功登录后,系统会将用户带到default.aspx页面。

我怎样才能做到这一点?有什么帮助吗?

4 个答案:

答案 0 :(得分:2)

FormsAuthentication.RedirectFromLoginPage Method (String, Boolean)

  

将经过身份验证的用户重定向回最初请求的网址或默认网址。

答案 1 :(得分:1)

您需要将URL作为GET参数传递给Login Page,并在登录成功后将重定向页面传递给作为GET参数传递的URL。

例如:

News.aspx:

<a href="Login.aspx?BackTo=News.aspx">Login</a>

的Login.aspx:

if (loginSuccess) {
   Response.Redirect(Request.QueryString["BackTo"] ?? "Default.aspx");
}

答案 2 :(得分:0)

登录成功后,在login.aspx页面中,您需要使用

重定向浏览器
<% Response.Redirect("page1.aspx", true) %>

如果您在用户当前所在页面的表单中提交了附加信息,则可以使用重定向将其重新放回该页面。

答案 3 :(得分:0)

<a href="Login.aspx?BackTo=News.aspx?BackTo=<%= Request.RawUrl() %>">Login</a>