突然回想一下,兩周之后放假回家,三周之后重返學習,四周之后就要真正的面對社會,就這樣有好多的舍不得在腦海中回旋,但是又是興奮的想快點擁有自己的小生活,似乎太多的人在說程序的道路甚是艱難,我不知道我的選擇是否是對的,但是我只有一件事情我認為我沒有錯,那就是無論什么時間帶着興趣去做自己喜歡做的事情就是對的,我不知道自己學習的怎么樣,還沒有接觸真正的項目,但是我感覺好想知道自己和其他人的差別在哪里?每天可以說是在學習着,但是我感覺每天都在退步着,一步步的在向MVC的方向走去,但是好想知道在.net方向學習好的那些友友做程序的技術,然后向他們看齊,有個方向,今天仍然學習的webform,昨天已經詳細的總結了webform的認識,但是最后沒有保存好就沒有啦,所以今天再重新的補充一些有關webform知識,
一.WebForm的對象
1.Request對象以及方法
2.Request對象以及方法(響應緩存的輸出)
3.Server對象以及方法
Response.Write("<script>alert('登陸成功')</script>"); Page.RegisterClientScriptBlock(Guid.NewGuid().ToString(), "<script>docment.write('登陸成功')</script>"); //可以使用此方法來彈出提示框,由於Response.Write方法的輸出是在最開始的位置,所以並不好 Page.RegisterStartupScript(Guid.NewGuid().ToString(), "<script>docment.write('登陸成功')</script>"); //也可以使用此方法來彈出提示框,但是這兩種方法現在都已經被否決 Response.Redirect("123.ashx");//這里的方法是臨時重定向,發送的請求代碼是302 Response.RedirectPermanent("123.ashx");//這里的方法是永久重定向,發送的請求代碼是301 string url = Request.UserHostAddress; Response.Clear(); Response.Write(url); //獲取客戶端地址 string rawurl = Request.RawUrl; Response.Write(rawurl); //獲取請求的相對地址 string useragent = Request.UserAgent; Response.Write(useragent);//獲取瀏覽器版本 string hostaddress = Request.UserHostAddress; Response.Write(hostaddress);//獲取客戶端地址 string hostname = Request.UserHostName; Response.Write(hostname); //獲取客戶端名字
二.狀態保持方式

public partial class fmLogin : System.Web.UI.Page { UsermessBll bll = new UsermessBll(); protected void Page_Load(object sender, EventArgs e) { if (Request.Cookies["context"] != null) //判斷是否存在cookie,如果存在,直接跳轉用戶詳情頁,否則重新登錄即可 { Response.Redirect("UserMess.aspx"); } else { if (Request.HttpMethod == "POST") //登錄時間判斷是get方式請求還是post方式請求 { string context = this.txtname.Value; string pwd = this.txtpwd.Value; string checkbox = Request.Form["checkbox"]; if (bll.GetLogin(context, pwd)) //bll層的返回值是一個bool類型,當不為空時間調用方法 { if (!string.IsNullOrEmpty(checkbox)) //這里是判斷checkbox中是否被選中,選中時間會存在value值 { HttpCookie cookie = new HttpCookie("cookietext", context); //創建cookie,它是鍵值對的形式存在 cookie.Expires = DateTime.Now.AddDays(7); //給他一個時間7天,可以是7小時或者7分鍾 Response.Cookies.Add(cookie); //添加cookie,記得使用的是Response對象,而不是Request Response.Redirect("UserMess.aspx"); } } else { Response.Write("<script>alert('登陸失敗')</script>"); } } } } }
下面就來看下UserMess頁面,獲取cookie:
public partial class UserMess : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { HttpCookie cookie = Request.Cookies["cookietext"]; //獲取cookie if (cookie != null) //當存在cookie時間 { this.span.InnerHtml = "<a href=''>" + cookie.Value + "</a>   <a href='DelCookie.aspx'>退出</a>";//創建了一個退出的連接 } } }
看下DelCookie頁面,刪除一個cookie:
public partial class DelCookie : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { HttpCookie cookie = Request.Cookies["cookietext"]; //獲取cookie if (cookie != null) { cookie.Expires = DateTime.Now.AddDays(-1); //這里是讓cookie過期,即不存在cookie,即退出 //Request.Cookies.Clear(); //這里是使用clear方法清除cookie Request.Cookies.Add(cookie); Response.RedirectPermanent("fmLogin.aspx"); } } }
在這里只是實現了aspx.cs類的程序和aspx類的程序,如果測試的話可以看昨天的bll層的代碼和dal層以及SQLHelper類的程序(http://www.cnblogs.com/dyxd/p/4251686.html),嘿嘿,今天就寫到這里啦,每天告訴自己,要繼續努力,加油!!!