asp中监听了session后,没缓存时打开一个页面跳转到登陆页面,如何能实现登陆后返回原页面而不是常规登陆后的主页面呢

asp中监听了session后,没缓存时打开一个页面跳转到登陆页面,怎么能实现登陆后返回原页面而不是常规登陆后的主页面呢?
  protected override void OnPreInit(EventArgs e)
    {
        base.OnPreInit(e);

        if (Session["realname"] == null || Session["realname"] == "")
        {

            Response.Write("<script>alert('User not login, please login first!')</script>");
            Response.Write("<script>window.location.href='Login.aspx'</script>");
        }

    }


在跳转地址里传入一个url记录之前页面地址能实现么?新手求大神指点,。。。
------解决方案--------------------
在登录页面通过Referer得到来路页面,然后登录成功跳转回去。
------解决方案--------------------
没缓存时打开一个页面跳转到登陆页面

你的想法就可以实现啊,跳转的时候,跳转地址里传参数(url),然后登陆完成后,直接跳转到这个url就好了
比如: 你点击a.aspx页面,现在没有缓存,需要跳转到登录页,那你跳转登录页的时候地址可以写成  login.aspx?url=a.aspx
在登陆页(login.aspx)中,登录完成后跳转可以写成   string url=Request.QueryString["url"];  Response.Redirect(url);

不知道我理解对你的意思没
------解决方案--------------------
asp中监听了session后,没缓存时打开一个页面跳转到登陆页面,如何能实现登陆后返回原页面而不是常规登陆后的主页面呢
在登录成功后,通过Request.UrlReferrer拿到客户端上次请求的Url,也就是所谓来路URL,
以下就是代码实现,希望对你有所帮助
string proUri = Request.UrlReferrer.ToString();
Response.Redirect(proUri);