自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

ASP.NET Default.aspx文件

開發(fā) 后端
本文介紹ASP.NET Default.aspx文件,無(wú)論在1.1還是2.0中,用VS創(chuàng)建的網(wǎng)站每個(gè)aspx文件都對(duì)應(yīng)一個(gè)cs文件,而cs文件里的類一般和文件同名。

首先大家看到無(wú)論在1.1還是2.0中,用VS創(chuàng)建的網(wǎng)站每個(gè)aspx文件都對(duì)應(yīng)一個(gè)cs文件(或者vb等其它語(yǔ)言).而cs文件里的類一般和文件同名, 如果遇見關(guān)鍵字的情況才會(huì)自動(dòng)使類名前加個(gè)'_',例如:_Default.創(chuàng)建的這個(gè)cs文件繼承自System.Web.UI.Page類,而且只能\必須繼承該類.原因就是aspx文件是繼承cs文件的.

就拿Default.aspx,Default.aspx.cs文件來(lái)說(shuō).Default.aspx.cs里包含了類 _Default,繼承字System.Web.UI.Page
通過

  1. publicclass_Default:System.Web.UI.Page  
  2. {  
  3. privatevoidPage_Load(objectsender,System.EventArgse)  
  4. {  
  5. //在此處放置用戶代碼以初始化頁(yè)面  
  6. }  
  7. }  

就能看得出來(lái).
而ASP.NET Default.aspx文件,雖然沒有闡明用的哪個(gè)類,但是,實(shí)際上已經(jīng)繼承自_Default類.

  1. <%@Pagelanguage="c#"Codebehind="Default.aspx.cs"AutoEventWireup=
    "false"
    Inherits="MyTest._Default"%> 
  2. <!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN"> 
  3. <HTML> 
  4. <HEAD> 
  5. <title>Default</title> 
  6. <metanamemetaname="GENERATOR"Content="MicrosoftVisualStudio.NET7.1"> 
  7. <metanamemetaname="CODE_LANGUAGE"Content="C#"> 
  8. <metanamemetaname="vs_defaultClientScript"content="JavaScript"> 
  9. <metanamemetaname="vs_targetSchema"content=
    "http://schemas.microsoft.com/intellisense/ie5"
    > 
  10. </HEAD> 
  11. <bodyMS_POSITIONINGbodyMS_POSITIONING="GridLayout"> 
  12. <formidformid="Form1"method="post"runat="server"> 
  13. <FONTfaceFONTface="宋體"></FONT> 
  14. </form> 
  15. </body> 
  16. </HTML> 

以上代碼***句話***Inherits="MyTest._Default"就表明了這點(diǎn).這個(gè)文件我是以VS2003建立的,也就是 ASP.NET1.1,MyTest是我用的命名空間。

類的運(yùn)行機(jī)制

說(shuō)了這么多,實(shí)際上我們還是沒有說(shuō)到System.Web.HttpContext類。但是我們現(xiàn)在說(shuō)的東西對(duì)于System.Web.HttpContext類運(yùn)用很有幫助。

我們?cè)L問了Default.aspx,那么是只訪問ASP.NET Default.aspx文件,或者該類么?答案當(dāng)然不是。ASP.NET中當(dāng)子類被請(qǐng)求時(shí),會(huì)先實(shí)例化父類。先建立父類的字段,然后是構(gòu)造函數(shù)。

  1. publicclass_Default:System.Web.UI.Page  
  2. {  
  3. privatevoidPage_Load(objectsender,System.EventArgse)  
  4. {  
  5. //在此處放置用戶代碼以初始化頁(yè)面  
  6. }  
  7.  
  8. Web窗體設(shè)計(jì)器生成的代碼#regionWeb窗體設(shè)計(jì)器生成的代碼  
  9. overrideprotectedvoidOnInit(EventArgse)  
  10. {  
  11. //  
  12. //CODEGEN:該調(diào)用是ASP.NETWeb窗體設(shè)計(jì)器所必需的。  
  13. //  
  14. InitializeComponent();  
  15. base.OnInit(e);  
  16. }  
  17.  
  18. /**////<summary> 
  19. ///設(shè)計(jì)器支持所需的方法-不要使用代碼編輯器修改  
  20. ///此方法的內(nèi)容。  
  21. ///</summary> 
  22. privatevoidInitializeComponent()  
  23. {  
  24. this.Load+=newSystem.EventHandler(this.Page_Load);  
  25.  
  26. }  
  27. #endregion  

從上面的類中可以看出,該類沒有字段,也沒有構(gòu)造函數(shù)。實(shí)例化它又得先實(shí)例化System.Web.UI.Page類。 System.Web.UI.Page類不是本文要討論的。在實(shí)例化_Default類的時(shí)候首先執(zhí)行的是OnInit方法。它重寫了 System.Web.UI.Page.OnInit。然后調(diào)用InitializeComponent方法,而InitializeComponent 方法又調(diào)用了Load事件,執(zhí)行了Page_Load方法。

在Page_Load方法被執(zhí)行之前,System.Web.UI.Page類的很多對(duì)象是不能使用的,比如:Application,Session等。

System.Web.HttpContext類Current屬性的運(yùn)用

終于說(shuō)到本文的重點(diǎn)了,可能這部分也不會(huì)說(shuō)很多,但是上面說(shuō)的確實(shí)是為這里服務(wù)的。也不多說(shuō)了,太長(zhǎng)的文章一般沒人看,何況我寫的比較膚淺,并且不夠精彩。

Application可以這樣使用:

  1. usingSystem;  
  2. usingSystem.Web;  
  3.  
  4. namespaceMyTest  
  5. {  
  6. /**////<summary> 
  7. ///MyTest的摘要說(shuō)明。  
  8. ///</summary> 
  9. publicclassMPage:System.Web.UI.Page  
  10. {  
  11. publicMPage()  
  12. {  
  13. //  
  14. //TODO:在此處添加構(gòu)造函數(shù)邏輯  
  15. //  
  16. try  
  17. {  
  18. if(HttpContext.Current.Application.Count<1)  
  19. HttpContext.Current.Application.Add("Title","我的網(wǎng)站");  
  20. //在Application沒有被創(chuàng)建的時(shí)候執(zhí)行  
  21. }  
  22. catch  
  23. {  
  24. HttpContext.Current.Response.Redirect("Err.Htm",true);  
  25. //出現(xiàn)錯(cuò)誤,跳轉(zhuǎn)到錯(cuò)誤頁(yè)面  
  26. }  
  27. }  
  28.  
  29. publicstringMy_Title  
  30. {  
  31. get  
  32. {  
  33. returnApplication["Title"].ToString();  
  34. }  
  35. }  
  36. }  

Default.aspx.cs繼承

  1. usingSystem;  
  2. usingSystem.Collections;  
  3. usingSystem.ComponentModel;  
  4. usingSystem.Data;  
  5. usingSystem.Drawing;  
  6. usingSystem.Web;  
  7. usingSystem.Web.SessionState;  
  8. usingSystem.Web.UI;  
  9. usingSystem.Web.UI.WebControls;  
  10. usingSystem.Web.UI.HtmlControls;  
  11.  
  12. namespaceMyTest  
  13. {  
  14. /**////<summary> 
  15. ///_Default的摘要說(shuō)明。  
  16. ///</summary> 
  17. publicclass_Default:MPage  
  18. {  
  19. privatevoidPage_Load(objectsender,System.EventArgse)  
  20. {  
  21. //在此處放置用戶代碼以初始化頁(yè)面  
  22. }  
  23.  
  24. Web窗體設(shè)計(jì)器生成的代碼#regionWeb窗體設(shè)計(jì)器生成的代碼  
  25. overrideprotectedvoidOnInit(EventArgse)  
  26. {  
  27. //  
  28. //CODEGEN:該調(diào)用是ASP.NETWeb窗體設(shè)計(jì)器所必需的。  
  29. //  
  30. InitializeComponent();  
  31. base.OnInit(e);  
  32. }  
  33.  
  34. /**////<summary> 
  35. ///設(shè)計(jì)器支持所需的方法-不要使用代碼編輯器修改  
  36. ///此方法的內(nèi)容。  
  37. ///</summary> 
  38. privatevoidInitializeComponent()  
  39. {  
  40. this.Load+=newSystem.EventHandler(this.Page_Load);  
  41.  
  42. }  
  43. #endregion  
  44. }  

ASP.NET Default.aspx文件使用

  1. <%@Pagelanguage="c#"Codebehind="Default.aspx.cs"AutoEventWireup=
    "false"
    Inherits="MyTest._Default"%> 
  2. <!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN"> 
  3. <HTML> 
  4. <HEAD> 
  5. <title><%=My_Title%></title> 
  6. <metanamemetaname="GENERATOR"Content="MicrosoftVisualStudio.NET7.1"> 
  7. <metanamemetaname="CODE_LANGUAGE"Content="C#"> 
  8. <metanamemetaname="vs_defaultClientScript"content="JavaScript"> 
  9. <metanamemetaname="vs_targetSchema"content=
    "http://schemas.microsoft.com/intellisense/ie5"
    > 
  10. </HEAD> 
  11. <bodyMS_POSITIONINGbodyMS_POSITIONING="GridLayout"> 
  12. <formidformid="Form1"method="post"runat="server"> 
  13. <FONTfaceFONTface="宋體"></FONT> 
  14. </form> 
  15. </body> 
  16. </HTML> 

【編輯推薦】

  1. ASP.NET開發(fā)技巧之Theme功能淺析
  2. 詳解ASP.NET動(dòng)態(tài)編譯
  3. Apache支持ASP.NET方法淺析
  4. 淺談ASP.NET服務(wù)器標(biāo)準(zhǔn)控件
  5. ASP.NET中SQL Server數(shù)據(jù)庫(kù)備份恢復(fù)淺析
責(zé)任編輯:佚名 來(lái)源: MSDN
相關(guān)推薦

2009-07-27 03:23:00

Default.asp

2009-07-28 15:38:14

aspx文件編譯ASP.NET

2009-07-27 15:25:40

aspx頁(yè)面ASP.NET

2009-10-19 15:14:48

aspx擴(kuò)展

2009-07-24 16:55:53

添加aspx頁(yè)面

2009-07-22 17:45:35

ASP.NET教程

2009-07-28 17:17:19

ASP.NET概述

2009-08-03 14:22:33

什么是ASP.NET

2009-07-27 12:22:03

ASP.NET和ASPASP.NET入門教程

2009-07-21 15:38:31

2009-08-10 13:32:15

ASP.NET TimASP.NET組件設(shè)計(jì)

2009-07-29 17:11:25

ASP.NET ISA

2009-07-29 16:08:07

ASP和ASP.NET

2009-08-03 13:38:18

ASP.NET編程模型

2009-08-03 17:35:07

ASP.NET WebASP.NET編程工具

2009-07-28 09:02:32

asp.net aja

2009-08-05 14:11:56

ASP.NET Web

2009-07-31 11:45:42

ASP.NET文件下載

2009-07-27 13:43:11

Web.config文ASP.NET

2009-07-27 17:32:39

Web ServiceASP.NET
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)