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

ASP.NET頁面框架概念淺析

開發(fā) 后端
ASP.NET頁面框架是什么呢?如何實(shí)現(xiàn)ASP.NET頁面框架呢?那么本文就向你介紹這方面的情況,還有實(shí)例的演示。

ASP.NET 頁面框架組件是Web窗體框架中一個(gè)可縮放的通用語言運(yùn)行時(shí)編程模型,它可以用于動(dòng)態(tài)地生成Web頁面。ASP.NET頁面框架組件是ASP的合理進(jìn)化(ASP.NET提供的語法與已有的頁面是兼容的),它被特意地設(shè)計(jì)用于解決早期模型中的大量的關(guān)鍵的缺陷。特別是,它提供了建立和使用可供重復(fù)使用的(reusable)UI控件的能力,這些控件可以封裝公用的功能,從而減少了頁面開發(fā)者需要編寫的代碼數(shù)量;它使開發(fā)者能夠清晰有序地構(gòu)造頁面邏輯(并非“纏繞在一起的代碼”);它使用的開發(fā)工具提供了強(qiáng)大的WYSIWYG(所見即所得)頁面設(shè)計(jì)支持能力(已有的傳統(tǒng)ASP代碼是不透明的)。本文介紹ASP.NET頁面特性的一些基本知識(shí)。

編寫***個(gè)ASP.NET頁面

ASP.NET頁面是帶.aspx擴(kuò)展名的文本文件。頁面由代碼和標(biāo)記(tag)組成,它們?cè)诜?wù)器上動(dòng)態(tài)地編譯和執(zhí)行,為提出請(qǐng)求的客戶端瀏覽器(或設(shè)備)生成顯示內(nèi)容。它們可以被部署在IIS虛擬目錄樹之下。當(dāng)瀏覽器客戶端請(qǐng)求.aspx資源的時(shí)候,ASP.NET運(yùn)行時(shí)(runtime)對(duì)目標(biāo)文件進(jìn)行分析,并把它編譯成.NET框架類,這個(gè)類接下來就可以用于動(dòng)態(tài)地處理請(qǐng)求了(請(qǐng)注意,.aspx文件只在***次被訪問的時(shí)候才編譯,編譯形成的類型實(shí)例以后供多個(gè)請(qǐng)求重復(fù)使用)。

我們不用修改HTML文件中的代碼,只需要把它的擴(kuò)展名改成.aspx,就建立了一個(gè)ASP.NET頁面。例如,下面的例子演示了一個(gè)簡單的HTML頁面,它收集用戶的姓名和類別,當(dāng)用戶點(diǎn)擊按鈕的時(shí)候就把窗體(form)發(fā)回原頁面:

  1. ﹤form action="intro1_vb.aspx" method="post"﹥  
  2. ﹤h3﹥ Name: ﹤input id="Name" type=text﹥  
  3. Category: ﹤select id="Category" size=1﹥  
  4. ﹤option﹥psychology﹤/option﹥  
  5. ﹤option﹥business﹤/option﹥  
  6. ﹤option﹥popular_comp﹤/option﹥  
  7. ﹤/select﹥  
  8. ﹤input type=submit value="Lookup"﹥  
  9. ﹤/h3﹥  
  10. ﹤/form﹥  

請(qǐng)注意:當(dāng)你點(diǎn)擊“Lookup”按鈕的時(shí)候沒有發(fā)生任何事情,這是由于該.aspx文件只包含了靜態(tài)HTML(沒有動(dòng)態(tài)內(nèi)容)。因此,相同的HTML被發(fā)回到客戶端,從而導(dǎo)致窗體字段(文本框和下拉列表)內(nèi)容丟失。

給頁面添加簡單的代碼

ASP.NET提供ASP.NET頁面框架的語法與ASP頁面是兼容的。它支持﹤% %﹥代碼呈現(xiàn)(render)塊,在.aspx文件中它可以與HTML內(nèi)容混合使用。在頁面顯示的時(shí)候,這些代碼塊會(huì)嚴(yán)格地執(zhí)行。

下面的例子演示了如何在HTML中使用﹤% %﹥呈現(xiàn)塊(每次增加字體的尺寸):

  1. ﹤form action="intro2_vb.aspx" method="post"﹥  
  2. ﹤h3﹥ Name: ﹤input id="Name" type=text﹥  
  3. Category: ﹤select id="Category" size=1﹥  
  4. ﹤option﹥psychology﹤/option﹥  
  5. ﹤option﹥business﹤/option﹥  
  6. ﹤option﹥popular_comp﹤/option﹥  
  7. ﹤/select﹥  
  8. ﹤/h3﹥  
  9. ﹤input type=submit value="Lookup"﹥  
  10. ﹤p﹥  
  11. ﹤% Dim I As Integer  
  12. For I = 0 to 7 %﹥  
  13. ﹤font size="﹤%=I%﹥"﹥ Welcome to ASP.NET ﹤/font﹥ ﹤br﹥  
  14. ﹤% Next %﹥  
  15. ﹤/form﹥  

請(qǐng)注意:上面的例子中的﹤% %﹥代碼塊與ASP不同,它會(huì)被真正地編譯——而不是由腳本引擎來解釋。這改善了運(yùn)行時(shí)的執(zhí)行性能。

ASP.NET頁面框架開發(fā)者可以使用﹤% %﹥代碼塊動(dòng)態(tài)地修改HTML輸出信息。例如,下面的代碼演示了如何使用﹤% %﹥代碼塊來解釋客戶端發(fā)回的結(jié)果:

  1. ﹤form action="intro3_vb.aspx"﹥  
  2. ﹤h3﹥ Name: ﹤input name="Name" type=text value="﹤%=HttpUtility.HtmlEncode(Request.QueryString("Name"))%﹥"﹥  
  3. Category: ﹤select name="Category" size=1﹥  
  4. ﹤%  
  5.  Dim I As Integer  
  6.  Dim Values(2) As String  
  7.  Values(0) = "psychology" 
  8.  Values(1) = "business" 
  9.  Values(2) = "popular_comp" 
  10.  For I = 0 To Values.Length - 1  
  11.   %﹥  
  12.   ﹤% If (Request.QueryString("Category") = Values(i)) %﹥  
  13.    ﹤option selected﹥  
  14.   ﹤% Else %﹥  
  15.    ﹤option﹥  
  16.   ﹤% End If %﹥  
  17.   ﹤%=Values(i)%﹥  
  18.   ﹤/option﹥  
  19.  ﹤% Next %﹥  
  20. ﹤/select﹥  
  21. ﹤/h3﹥  
  22. ﹤input type=submit name="Lookup" value="Lookup"﹥  
  23. ﹤p﹥  
  24. ﹤% If (Not Request.QueryString("Lookup") = Nothing) %﹥  
  25. Hi ﹤%=HttpUtility.HtmlEncode(Request.
  26. QueryString("Name")) %﹥, you selected: ﹤%=HttpUtility.HtmlEncode
  27. (Request.QueryString("Category")) %﹥  
  28. ﹤% End If %﹥  
  29. ﹤/form﹥  

請(qǐng)注意:盡管﹤% %﹥代碼塊為我們定制ASP.NET頁面返回的文本輸出信息提供了強(qiáng)大的途徑,但是它們沒有提供清晰的HTML編程模型。上面的例子顯示,僅使用﹤% %﹥代碼塊的開發(fā)者必須自己管理頁面的狀態(tài)、自己截取被發(fā)送的值。

ASP.NET頁面框架的概念和實(shí)例分析就向你介紹到這里,希望對(duì)你理解ASP.NET頁面框架有所幫助。

【編輯推薦】

  1. ASP.NET控件使用技巧雜談
  2. ASP.NET注釋使用技巧淺析
  3. ASP.NET trace的使用淺析
  4. ASP.NET Request對(duì)象的屬性介紹
  5. ASP.NET(VB)應(yīng)用之圖片增加水印文字淺析
責(zé)任編輯:仲衡 來源: 百度空間
相關(guān)推薦

2009-07-28 16:40:11

ASP.NET異步頁面

2009-08-03 13:38:18

ASP.NET編程模型

2009-08-05 14:01:50

ASP.NET配置錯(cuò)誤

2009-07-23 10:52:38

2009-06-24 09:12:26

ASP.NET頁面請(qǐng)求

2009-07-24 10:53:51

ASP.NET實(shí)現(xiàn)靜態(tài)

2009-08-05 14:17:27

ASP.NET錯(cuò)誤頁面

2009-07-31 09:32:04

ASP.NET緩存概念ASP.NET緩存應(yīng)用

2009-10-10 10:44:15

ASP.NET頁面緩存

2009-07-24 13:41:15

ASP.NET AJA

2009-08-05 18:36:12

ASP.NET Che

2009-07-31 12:43:59

ASP.NET MVC

2009-08-05 15:50:13

ASP.NET優(yōu)點(diǎn)

2009-08-10 13:32:15

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

2009-08-04 17:16:16

ASP.NET代碼優(yōu)化

2009-08-05 16:50:09

ASP.NET For

2009-07-24 18:02:46

ASP.NET編程

2009-07-27 15:34:11

MembershipASP.NET

2009-07-27 17:25:53

ASP.NET驗(yàn)證控件

2009-08-03 10:07:20

ASP.NET Ses
點(diǎn)贊
收藏

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