WebCast《实战ASP.NET AJAX系列课程(2):使用客户端框架创建“纯粹”的Ajax应用程序》相关资源...
本課程將從頭開(kāi)始使用ASP.NET AJAX客戶端框架/組件創(chuàng)建一個(gè)“純粹”的Ajax應(yīng)用程序的全過(guò)程。適合于開(kāi)發(fā)者學(xué)習(xí)Ajax所帶來(lái)的這種嶄新的開(kāi)發(fā)方式,即將表示層完全放在客戶端,瀏覽器和服務(wù)器之間只傳送純粹的數(shù)據(jù)。同時(shí)也能幫助開(kāi)發(fā)者融會(huì)貫通ASP.NET AJAX的客戶端框架。
觀看錄像:(coming soon...)
下載PPT:ASPNETAJAX_IN_ACTION_2.zip
下載代碼:DemoCode.zip
本代碼來(lái)自《ASP.NET AJAX程序設(shè)計(jì)——第II卷:客戶端Microsoft AJAX Library相關(guān)》最后一章,書(shū)中也詳細(xì)介紹了項(xiàng)目具體的分析過(guò)程以及實(shí)現(xiàn)、編碼方法。
?
問(wèn)題解答(朋友們可以在這里繼續(xù)提問(wèn))
實(shí)戰(zhàn)ASP.NET AJAX系列課程(2):使用客戶端框架創(chuàng)建“純粹”的Ajax應(yīng)用程序
講師:陳黎夫
活動(dòng)日期:2007-06-20 14:30--16:00
________________________________________
Q:看到我的問(wèn)題了嗎?有母版頁(yè)后,opener.document.getElement("id")不能用了?有沒(méi)有什么替代方法?
A:母版頁(yè)面應(yīng)該和這個(gè)問(wèn)題關(guān)系不大,因?yàn)楫吘鼓赴骓?yè)和內(nèi)容實(shí)在服務(wù)器端組裝起來(lái),然后作為一個(gè)統(tǒng)一的HTML頁(yè)面發(fā)送給客戶端的。opener.document.getElement懷疑應(yīng)為opener.document.getElementById。如果有需要,請(qǐng)將程序的示例代碼發(fā)送給我。
________________________________________
Q:這個(gè)“純粹”的Ajax應(yīng)該就是指只在頁(yè)面中加入scriptManager之后來(lái)使用它的AjaxLibrary進(jìn)行編程的嗎?
A:可以這樣理解,就是客戶端表示層邏輯都放在客戶端JavaScript中實(shí)現(xiàn),我們?cè)诔绦蛑芯帉?xiě)客戶端的控件/組件,而服務(wù)器端卻只提供“純粹”的數(shù)據(jù),然后借助ASP.NET AJAX異步通訊層完成服務(wù)器和客戶端的通訊。
________________________________________
Q:if(typeof(sys)!...那句寫(xiě)在什么位置
A:寫(xiě)在獨(dú)立JavaScript文件的最后一行。
________________________________________
Q:有人說(shuō)Ajax的是網(wǎng)站性能的殺手,會(huì)占用大量的帶寬,請(qǐng)問(wèn)您有什么看法?
A:濫用Ajax確實(shí)會(huì)造成不必要的網(wǎng)絡(luò)帶寬浪費(fèi),不過(guò)合理地使用Ajax功能卻會(huì)大大節(jié)省網(wǎng)絡(luò)帶寬——畢竟只傳輸了頁(yè)面部分內(nèi)容。
________________________________________
Q:add_initializeRequest在一個(gè)頁(yè)面的生命周期中起到什么作用?
A:initializeRequest是PageRequestManager在異步回送過(guò)程中發(fā)出的第一個(gè)事件。在該事件的處理函數(shù)中,我們可以根據(jù)實(shí)際需要(例如客戶端已經(jīng)擁有所需要的數(shù)據(jù),或是為其他高優(yōu)先級(jí)的請(qǐng)求讓位等)取消該本次異步回送請(qǐng)求。
________________________________________
Q:我在網(wǎng)上學(xué)到了一種方法:建立一個(gè)類,類里面有只有一個(gè)屬性,該屬性返加一個(gè)帶HTML標(biāo)記的字符串,然后通過(guò)webservice 初始化該類。和您剛才的講的方法一樣嗎?
A:對(duì)不起我沒(méi)能理解您的意思,能再明確一些說(shuō)明么?
________________________________________
Q:如何響應(yīng)服務(wù)端的事件
A:如果是在服務(wù)器端響應(yīng)時(shí)間,那么只要編寫(xiě)事件處理函數(shù)就好了。如果您想在客戶端響應(yīng)服務(wù)器端事件,那么基于現(xiàn)在的HTTP模型還比較困難。
________________________________________
Q:剛才的例子中,首先顯示progress,然后調(diào)用回調(diào)函數(shù),可每個(gè)回調(diào)函數(shù)里都有一個(gè)能數(shù)result,那個(gè)參數(shù)是類的實(shí)例嗎?
A:result中的數(shù)據(jù)就是調(diào)用Web Service方法的返回值,如果Web Service方法返回int,那么它就是個(gè)int,如果Web Service方法返回?cái)?shù)組,那么它就是個(gè)數(shù)組。
________________________________________
Q:RSS.NET 這個(gè) Library 可以 share 一下嗎? 可以發(fā)給我們嗎?
A:請(qǐng)至http://www.rssdotnet.com/免費(fèi)下載。
________________________________________
Q:聽(tīng)說(shuō)在Orcas中集成了ASP.Net Ajax控件,是這樣嗎?
A:是的,Orcas中ASP.NET AJAX控件已經(jīng)被集成到Visual Studio的Toolbox中。
________________________________________
Q:如果用asp.net ajax框架,只有用客戶端調(diào)用webservice這一種方法嗎?
A:還可以調(diào)用ASP.NET頁(yè)面中的靜態(tài)方法。
________________________________________
Q:可以在initializeRequest過(guò)程中暫停某個(gè)控件的PostBack行為嗎?不是Abort,而是指讓其等待某個(gè)客戶端的相應(yīng)后,再?zèng)Q定是否繼續(xù)執(zhí)行
A:可以嘗試如下思路:在initializeRequest時(shí)克隆并保存當(dāng)前的Sys.Net.WebRequest對(duì)象,然后取消原來(lái)的這個(gè)WebRequest。在其他響應(yīng)到達(dá)之后,如果有需要,再取得這個(gè)保存的WebRequest并繼續(xù)發(fā)出。
轉(zhuǎn)載于:https://www.cnblogs.com/dflying/archive/2007/06/20/790744.html
總結(jié)
以上是生活随笔為你收集整理的WebCast《实战ASP.NET AJAX系列课程(2):使用客户端框架创建“纯粹”的Ajax应用程序》相关资源...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 《Python编程从入门到实践》学习笔记
- 下一篇: asp.net ajax控件工具集 Au