//我段登录页中的代码如何理解?请详细解释下,谢谢!!
              if (flag == true)
                        {
                            HttpCookie cookie = new HttpCookie("login");
                            cookie.Values["UserID"] = txtLogin.Text;
                            cookie.Path = "/";
                            HttpContext.Current.Response.AppendCookie(cookie);
                            FormsAuthentication.SetAuthCookie(txtLogin.Text, false);                            Session["user"] = txtLogin.Text;
                            Response.Redirect("DefaultUser.aspx");                        }

解决方案 »

  1.   


    //另外,其它页面用的这句,以保证必须登录才能访问,这句如何理解?
     if (Context.Request.Cookies["login"] == null || Context.Request.Cookies["login"].Values["UserID"] == null)
                    Context.Response.Redirect("../login.aspx");
      

  2.   

     HttpCookie cookie = new HttpCookie("login");实例化1个COOKIE                            cookie.Values["UserID"] = txtLogin.Text;
    设置cookie中UserID的值为txtLogin.Text(可理解为cookie为一个数组,UserID为其下标)                            cookie.Path = "/";                            HttpContext.Current.Response.AppendCookie(cookie);                            FormsAuthentication.SetAuthCookie(txtLogin.Text, false);                            Session["user"] = txtLogin.Text;
    把Session中user的值设为txtLogin.Text(也可看作数组)
                                Response.Redirect("DefaultUser.aspx");
    跳转到页面DefaultUser.aspxif (Context.Request.Cookies["login"] == null || Context.Request.Cookies["login"].Values["UserID"] == null)
    如果Cookies["login"] 没有设置值||Cookies["login"].Values["UserID"]没有设置值)                Context.Response.Redirect("../login.aspx");
    跳转到上级文件夹的login.aspx