asp.net中如何实现登录后跳转登录前的页面

cardszq 2008-08-07 09:54:56
是不是页面在提交到登录页面的时候把自己的地址也传过去。能否具体点。或者有其他更好的方法。
...全文
206 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
guyan033 2008-08-07
  • 打赏
  • 举报
回复
Request.QueryString["ReturnUrl"].ToString()
begonia_ref 2008-08-07
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 suyiming 的回复:]
不是form

Request.UrlReferrer.ToString() //上次请求的url 这个问题是 不是object型
=====
如果不存在的话 会发生错误

[/Quote]
呵呵,没考虑为空的情况
ViewState["url"] = Request.UrlReferrer==null?"default.aspx":Request.UrlReferrer.ToString();//如果为空
就转向默认页面
love5207070 2008-08-07
  • 打赏
  • 举报
回复
登陆页面
page_load

C# code
if (!IsPostBack)
{
ViewState["url"] = Request.UrlReferrer.ToString();
}



登陆验证事件

C# code
if ()
{
Response.Redirect(ViewState["url"].ToString());
}
else
{
//
}


周公 2008-08-07
  • 打赏
  • 举报
回复
接上面的,如果用户没有登录,跳转到登录页面之前把本页作为参数。这个参数就是登录成功之后要跳转的页面。
begonia_ref 2008-08-07
  • 打赏
  • 举报
回复
登陆页面
page_load

if (!IsPostBack)
{
ViewState["url"] = Request.UrlReferrer.ToString();
}

登陆验证事件

if ()
{
Response.Redirect(ViewState["url"].ToString());
}
else
{
//
}
suyiming 2008-08-07
  • 打赏
  • 举报
回复
不是form

Request.UrlReferrer.ToString() //上次请求的url 这个问题是 不是object型
=====
如果不存在的话 会发生错误




用以下办法就可以了

            ViewState["url"] = "/user/UserInfo.aspx";

if (!object.Equals(Request.QueryString["ReturnUrl"], null))
{
string fromurl = Request.QueryString["ReturnUrl"].ToString().Trim();
if (fromurl != "")
{
ViewState["url"] = fromurl;
}
}
else
{
if (!object.Equals(Request.ServerVariables["Http_Referer"], null))
{
string urlrefer = Request.ServerVariables["Http_Referer"].ToString().Trim().ToLower();
string thisurl = Request.Url.ToString().ToLower();
if (urlrefer != "" && urlrefer.IndexOf("/login.aspx") == -1 && thisurl.IndexOf(urlrefer) == -1)
{
ViewState["url"] = urlrefer;
}
}
}
include_me 2008-08-07
  • 打赏
  • 举报
回复
可以设置目录访问权限, 然后看下asp.net是如何自动实现的.
cardszq 2008-08-07
  • 打赏
  • 举报
回复
谢谢楼上的。我没有采用form验证。
yangpeiyu 2008-08-07
  • 打赏
  • 举报
回复
Response.Redirect("页面地址");
begonia_ref 2008-08-07
  • 打赏
  • 举报
回复
Request.UrlReferrer.ToString() //上次请求的url
suyiming 2008-08-07
  • 打赏
  • 举报
回复
如果用form验证的话
                        if (Request.QueryString["ReturnUrl"] != null)//判断是否有上一级页面,如果有登陆后返回之前的页面
{
FormsAuthentication.RedirectFromLoginPage(username, false);
}

else
{
FormsAuthentication.SetAuthCookie(username, false);//直接进到默认页面
Response.Redirect("admin/main.aspx",false);
}

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧