AutoEventWireup --- 指示是否自動啓用頁事件。 Codebehind --- 指示後臺代碼文件。 Inherits --- 繼承類。php
AutoEventWireup:指示該頁的事件是否爲自動連網的。若是啓用事件自動連網,則爲 true;不然,爲 false。 Inherits:定義供頁繼承的代碼隱藏類。能夠是從 Page 類派生的任何類。 Codebehind:代碼綁定文件的名稱。mysql
Codebehind="PreDeliver.aspx.cs" 表示該頁的後置代碼在當前目錄下的PreDeliver.aspx.cs文件中; AutoEventWireup="false" 表示是否自動地將頁面的事件和相應的方法綁定到一塊兒,通常這個什要設爲false,由於若設爲true有可能兩次調用相同的事件代碼。 Inherits="Issue.Pre"表示頁面中的控件是在哪一個類中定義的。程序員
基礎知識:AutoEventWireup屬性 AutoEventWireup屬性決定事件句柄怎樣鏈接到控件事件中。當AutoEventWireup設置爲true時,ASP.NET決定調用類中的哪種方法來響應那些在用戶與網頁的交互中產生的事件。ASP.NET將沒必要用代理就能夠爲一個Web控件調用合適的事件句柄,對程序員而言,這樣能夠無需爲事件句柄添加代理。在程序員不是使用Visual Studio於是必須本身添加代碼的狀況下,這是很是方便的。 當Visual Studio生成一個ASPX文件時,由於Visual Studio爲咱們生成必要的時間代理,因此將AutoEventWireup設爲false。 若是在Visual Studio中將AutoEventWireup設爲true,那麼一個事件句柄將會被調用兩次,一次經過代理,一次是AutoEventWireup的結果。 runat屬性,設置爲「Server」,說明由服務器來處理表單並生成發送給客戶的HTML代碼。 同一類型的Web控件能夠映射到不一樣的HTML元素,這取決於客戶端的瀏覽器和Web空間的參數設置。 Page類定義了所請求的網頁,位於System.Web.UI名字空間,它包含了爲建立基於Web的應用和控件所需的類。 類Page也提供了建立基於Web的應用所需的事件句柄和必要對象。 除了Page類,System.Web.UI還包括Control類。這是一個爲全部的Web控件提供通常功能的基類。 ASPX文件和代碼後置文件是怎樣被用於建立那些發送給客戶的網頁的呢?首先,類WebTimeTest繼承了定義了網頁通常功能的Page類。除了繼承這些功能之外,WebTimeTest還定義了一些本身特有的功能。 代碼後置文件就是定義了這一功能的文件,而ASPX文件定義了GUI。當客戶請求一個ASPX文件時,在包含網頁的可視化部分(在ASPX文件中定義)和包含網頁的邏輯部分(在代碼後置文件中定義)的現場後面建立一個類。新類繼承自Page。 當網頁首次被請求時,這個類被編譯而且建立一個實例。這個實例表示網頁,它建立了被傳送給客戶的HTML。由編譯過的類建立的組件被放置在項目的Bin目錄中。 一旦一個網頁實例已經建立,多個用戶就可使用這一實例來訪問這個網頁——再也不須要從新編譯。項目僅僅在程序員修改應用程序後才須要從新編譯,這些變化由運行時間環境檢測,而且項目將被從新編譯來反應變化的內。sql
2. 緩存的幾種不一樣的實現方法?
1以編程方式操做 HttpCachePolicy 類。 HttpCachePolicy.SetExpires HttpCachePolicy.SetCacheability |NoCache|Private|Public|Server|ServerAndNoCache |ServerAndPrivate 2<%@ OutputCache Duration="60" VaryByParam="None" %>Duration 和 VaryByParam 屬性是必需的。 2)緩存 ASP.NET 頁的某些部分 不變的部分緩存起來,沒必要老是請求服務器 控件頭部,則該控件的一個版本將在輸出緩存中存儲 120 秒。 <%@ OutputCache Duration="120" VaryByParam="None" %> 或使用代碼隱藏開發方法開發用戶控件,則將如下屬性包含在類聲明的元數據中時,控件版本將在輸出緩存中存儲 120 秒。 [C#][PartialCaching(120)] 以上兩法將僅緩存用戶控件。 也可嵌套使用,在已緩存的頁面或控件中緩存控件。 !!可能的錯誤: 若是編寫代碼來操做一個包含 @ OutputCache 指令的用戶控件,則將出現錯誤。 另外,若是頁輸出緩存設置爲 100 秒,而用戶控件輸出緩存設置爲 50 秒,則整個頁將在輸出緩存中存儲 100 秒,而與用戶控件較短的時間設置無關。 不過,若是頁輸出緩存存儲持續時間比用戶控件存儲持續時間短,則將一直使用緩存用戶輸出控件,直到其存儲時間到期爲止,即便該頁的其他部分已爲某個請求從新生成。例如,若是頁輸出緩存設置爲 50 秒,而用戶控件輸出緩存設置爲 100 秒,則頁的其他部分每到期兩次,用戶控件就到期一次。 3)緩存應用程序數據 容許您將須要大量的服務器資源來建立的對象存儲在內存中。它是由 Cache 類實現的,實例是每一個應用程序專用的,其生存期依賴於該應用程序的生存期。從新啓動應用程序後,將從新建立 Cache 對象。
3.怎樣計算頁面執行的時間?
有時見到別人的頁面下方顯示出頁面的執行時間,不少新手都會想知道是怎麼實現的吧?其實這個在PHP手冊上就有,請看例子
<?php //定義獲取時間函數 function getmicrotime(){ list($usec, $sec) = explode(" ",microtime()); return ((float)$usec + (float)$sec); } //獲取開始時的時間 $time_start = getmicrotime(); //執行你本身的代碼 for ($i=0; $i < 10; $i++){ echo '輸出'; } //獲取執行代碼後的時間 $time_end = getmicrotime(); //計算結果 $time = $time_end - $time_start; //輸出結果 echo "頁面執行時間 $time 秒"; ?> |
4. 什麼是AJAX
Ajax用來描述一組技術,它使瀏覽器能夠爲用戶提供更爲天然的瀏覽體驗。在Ajax以前,Web站點強制用戶進入提交/等待/從新顯示,用戶的動做老是與服務器的「處理時間」同步。Ajax提供與服務器異步通訊的能力,從而使用戶從請求/響應的循環中解脫出來。藉助於Ajax,能夠在用戶單擊按鈕時,使用JavaScript和DHTML當即更新顯示,並向服務器發出異步請求,以執行更新或查詢數據庫。當請求返回時,就可使用JavaScript和CSS來相應地更新顯示,而不用刷新整個頁面。最重要的是,用戶甚至不知道瀏覽器正在與服務器通訊:Web站點看起來是即時響應的。
雖然Ajax所需的基礎架構已經出現了一段時間,但直到最近異步請求的真正威力才獲得利用。可以擁有一個響應極其靈敏的Web站點確實激動人心,由於它最終容許開發人員和設計人員使用標準的HTML/CSS/JavaScript堆棧建立「桌面風格的(desktop-like)」可用性。數據庫
5. 用本身的語言描述一下程序鏈接數據庫的過程。
我須要用c寫一個鏈接mysql的cgi程序,cgi程序放在「/var/www/cgi/」目錄,mysql客戶機庫放在「/usr/local/lib/mysql」下,若是個人cgi程序編譯的時候不鏈接客戶機庫,就能夠正常執行,當編譯的時候加
「-L/usr/local/lib/mysql/ -lmysqlclient -lz -lm」的時候就出錯,錯誤以下:
- Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request.
- Please contact the server administrator,root@localhost.localdomain and inform them of the time the error occurred, and anything you might have done that may have caused the error.
- More information about this error may be available in the server error log.
複製代碼