ASP.NET AJAX中的非同步PageMethod呼叫

gudesheng發表於2008-01-03



    上回我們介紹過了ASP.NET AJAX當中的非同步Web Services呼叫,但是用過ASP.NET 2.0當中的新功能Call Back的朋友們可能會覺得麻煩,還要多建立一個Web Sevices(.asmx)頁面,如果您嫌額外建立一個.asmx的Web Services頁面太過麻煩,還有一種更簡易的方式可以進行非同步的呼叫,我們稱之為Page Method。

    您可以建立一個.aspx頁面,並一樣佈置ScriptManager、TextBox與Html Button:

 


    接著我們鍵入下面的程式碼:

 


    接著,請測試執行的結果,您會發現一樣可以通過非同步的方式呼叫(按下Button之後不換頁就可以利用伺服器端的資訊更新TextBox內容),但是不需要額外建立了一個.asmx檔案,在程式的結構上稍為清爽一點了。這就是PageMethod的使用方式,請注意其中務必將.aspx的 PageMethod宣告為靜態方法(加上shared關鍵字),並且加上下面的Attribute(第1-2行):

 

    同時間在.aspx頁面上的ScriptManager控制元件,一定要將其EnablePageMethods屬性設為true,才可正確使用PageMethod。


資料來源:節錄自筆者“ASP.NET AJAX應用剖析立即上手”一書 



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1880808


相關文章