2015年7月24日 星期五

VS 2012 C# Page物件 -- 20150724

何謂網頁的「存留週期」?

當連線ASP.NET網頁時,伺服器端會有一連串處理過程,伺服器端處理完畢後才會將網頁送出,此處理過程便稱為「存留週期」。由此可知,一個網頁從開始到卸載,其生命其實在伺服器送出後便已經結束。(補充:20151126)



最常用到Page物件的重要屬性與方法:

  • Page.IsPostBack:檢查網頁是否為第一次連線或因PostBack而被載入
  →  屬性為False:表示用戶端是第一次連線
  →  屬性為True:網頁是因為PostBack而重新被執行。

※當網頁第一次連線時,進行變數、控制項的初始化、開啟檔案、連線資料庫取得所需資料,都可藉由此屬性來避免重複執行這些動作。
  • Page.IsValid:檢查網頁上所有驗證是否都已通過
  • Page.Title:取得或設定網頁的標題

--------重點:---------------------------------------------------------------------------------------

在Web畫面上「做的任何動作」,都會引起PostBack(回傳)動作,進而重新觸發Page_Load事件。例如:點TextBox、按任何一個Button按鈕.....等。所以在網頁設計中,加入一段If(!Page.PostBack) IF Not Page.PostBack的判別是來判斷「網頁是否第一次被執行?」。

----------------------------------------------------------------------------------------------------------------

案例:

當在網頁上按下Button按鈕的時候,會觸發Button1_Click事件,這是會導致回傳。根據ASP.NET為例的執行順序,如下:

1.先執行Page_Load事件。

2.接者才執行TextBox1_TextChanged事件。

3.最後才是Button1_Click事件。









2015年7月1日 星期三

VS 2012 C# 快速製作簡單搜尋引擎 -- 20150701

緣由:

想要學寫程式,但又覺得全部都是用寫的很累人,所以找尋最簡單不用寫太多的程式碼的方式,於是就嘗試、測試....再測試....最終成功後,把它一點一滴的紀錄下來,順便分享給網友們。



步驟一、透過元件先將畫面設計好。





















步驟二、設定SqlDataSource1的資料來源。






































※選擇資料來源的[資料表]與設定「Where查詢條件」。




































※選擇資料表中的[查詢欄位(CustName)]與設定查詢所用到的[控制項(TextBox1)]






























※確認[Where條件子句]已建立完成。









































































































步驟三、設定GridView1的資料來源為SqlDataSource1。
























步驟四、網頁畫面切換至「原始檔模式」,查看自動產生的程式碼。













































※稍微修改Where條件字句,將其改為「模糊查詢」條件。(如下圖)

程式碼:

       Select * From 資料表 Where 欄位A like '%欄位A%'















































※修改完程式碼後,切回至[設計模式]。





步驟五、測試查詢功能














結論:

透過工具能快速地解決問題才是王道,同樣能達到目的,為何不選擇簡單又快速的方式呢?我不排斥寫程式碼,但要我每個網頁都要用程式碼一個一個寫,對不起~我真的是做不到。只有頭殼壞掉的人才這樣做。