比如用户在访问a.aspx,a.aspx要求用户登陆,如果用户没有登陆则跳转到登陆页面(login.aspx),用户在登陆后如何返回a.aspx?或者说在login.aspx中,如何得到上一个出错页面的地址? 

解决方案 »

  1.   

    a.aspx->login.aspx?url=a.aspx->登陆成功->Response.Write(Request["url"]);
      

  2.   

    FormsAuthentication.RedirectFromLoginPage
      

  3.   

    membership 可以很好的解决你的问题? 
    a.aspx->login.aspx?url=a.aspx->登陆成功->Response.Write(Request["url"]);也可以
      

  4.   

    membership 可以很好的解决你的问题? 
    a.aspx->login.aspx?url=a.aspx->登陆成功->Response.Write(Request["url"]);也可以
    ---------------------------------------------------------------------------------
    我这里怎么不行呢?
      

  5.   

    Write不是写吗?为什么不用redrect?
      

  6.   

    应该是使用form验证
    lz说的很对,这个是将字符串写入到回应的数据流里面去,如果要转向,可以用redirect
      

  7.   

    protected void Page_Load(object sender, EventArgs e)
        {
            ViewState["UrlReferrer"] = Request.UrlReferrer.ToString();        HyperLink1.NavigateUrl = (string)ViewState["UrlReferrer"];
            Response.Write((string)ViewState["UrlReferrer"]);
        }
      

  8.   

    protected void Page_Load(object sender, EventArgs e)
        {
            ViewState["UrlReferrer"] = Request.UrlReferrer.ToString();        HyperLink1.NavigateUrl = (string)ViewState["UrlReferrer"];
            Response.Write((string)ViewState["UrlReferrer"]);
        }
    ---------------------------------------------------------------
    我觉得这个很好啊。
      

  9.   

    1Form 验证
    2自已写代码处理
      

  10.   

    记录上一次访问的页面地址,
    如:login.aspx?url=a.aspx
      

  11.   

    我是在数据库设计了一个字段来记录登陆用户的权限然后在登陆的时候创建个Session,,在其他页面的pageload中来判断用户是否登陆和登陆权限Session为空则未登陆,有值的话就判断权限
      

  12.   

    肯定别的页面放Session,判断他的有无,再跳转页面
      

  13.   

    protected void Application_AuthenticateRequest(Object sender, EventArgs e)
    {
    try
    {
       //判断用户是否登录
    }
    catch(CheckSessionException ex)
    {
    log.Warn("Checksession Failed:" + ex.Message);
    string logonPageUrl = Request.ApplicationPath + Globe.LOGIN_PAGE;
    if(string.Compare(Request.Path,logonPageUrl,true)!=0 && Request.Path.IndexOf("Public/")==-1)
    {
    string url = Request.Url.ToString().Replace('&','*');
    Response.Redirect(logonPageUrl + "?BackUrl=" + url);
    }
    }
    }