web入門三階段

來源:互聯網
上載者:User

標籤:style   blog   class   code   java   ext   

 

1.一般處理常式ashx+html方式

ashx只是一個幕後處理類,在編譯時間伺服器會根據前台指令集,找到ashx的幕後處理類執行PocessRequest(),這裡簡稱pr方法,所以瀏覽器頁面的展示就交給html頁面了,對於資料互動的方式中,兩者主要是通過,響應報文替換的方式,首先在html頁面中預留戰位字串 例如{@str},資料更新或操作的時候,在html頁面中以超連結或者js方式跳轉到幕後處理頁面,在幕後處理頁面進行處理,將操作後的結果以html字串的方式返回,可以儲存在StringBuilder sbStr變數中,然後替換html中的預留位置在瀏覽器端顯示。

//html端的預留位置<html><head></head><body><@str>//佔位字串</body></html>//ashx的pr方法中System.Text.StringBuilder sbStr=new StringBulider(1000);//訪問資料庫,查詢資料結果返回資料modelMOdel.Class model=new BLL.Class.GetList();
//將得到的資料以html代碼添加到htmlCode中,然後替換佔位字串{@str}sbStr.AppendLine(htmlCode);sbStr.Replace("{@str}",htmlCode);

2.webForm方式

webForm相對於前一種模式來說,它的特點是減少了html代碼的編寫,它分為前台頁面aspx和後台類,前台頁面是繼承與後台類的,而後台類中向比於一般處理常式不再有pr方法,而是pageLoad方法,其實兩者都差不多,只是aspx.cs更進一步,ashx繼承與IhttpHandler而aspx是繼承於IhttpHandler的子類,對於aspx前台頁面好的一點是可以直接以<%%>的方式在html中使用C#文法,並且訪問protected存取層級以上的對象,webForm與上一種方式相比,ashx主要用於幕後處理,適用於html代碼比較少,而aspx則相反。

?
1 2 //接上例在aspx的前台頁面直接可以訪問sbStr <%=sbStr%>

 

3.Ajax非同步方式

這種模式,我自己的理解是,瀏覽器端的多線程區別於以上兩種少了頁面跳轉和重新整理,前台和後台既是同步的,同時又是分離的,從“同步”方面來說,當前台有任何資料改變的話,幕後處理程式必須要緊跟著前台頁面同步 更新資料;而之所以又是“分離”,是因為前台的頁面都是通過ajax非同步對象進行與後台頁面的互動,而前台頁面根本沒有跳轉或重新整理過,他只是從前台頁面的結構出發,對頁面顯示的元素進行修改而已;要是對這種關係做一個形象的比喻的話,就像是照鏡子一樣,而變化的實體人就像是後台資料,而鏡子中人的虛像就像是前台頁面的布局,當人的動作發生改變時,虛像就會隨著改變,而這中間的聯絡者,就像是非同步對象 。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.