大家好,首先在一个页面加载时检测到需要用户登陆,这时怎样弹出一个登陆页面?
我说的是那种工具栏,地址栏都没的 弹出窗口
然后,登陆验证后,怎样让它自动返回到用户刚才浏览的页面?

解决方案 »

  1.   

    if (Session["UserID"] == null || Session["UserID"].ToString().Length == 0) 
    {
     Response.Redirect("index.aspx?QueryString=" + Server.UrlEncode(Request.ServerVariables["QUERY_STRING"]) + "&ret_page=" + Server.UrlEncode(Request.ServerVariables["SCRIPT_NAME"]));
    }这个是检测到用户没有登录时,返回到登录页的语句,登录后会重新返回到刚打开的页面.你自己测试一下.
      

  2.   

    建立一个basepage.cs 比如using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    public class BasePage : System.Web.UI.Page
    {
          public BasePage()
        { }
        protected override void OnInit(EventArgs e)
        {
            if (Session["CurrentUser"] == null)
            {
                HttpContext.Current.Response.Write("<script language=javascript>top.window.location.replace('index.aspx');</script>");
                HttpContext.Current.Response.End();
                return;
            }
            else
            {
              //...
            }
         
            //---
            base.OnInit(e);
        }    
    }所有 需要 判断 用户登录信息的页面都 继承至basepage
    public class popedom_usermgr : BasePage
    {
    //...
    }
    登录 页面 使用
    Session["CurrentUser"] 来保存用户信息