使用AjaxPro,js呼叫後臺方法
阿新 • • 發佈:2019-02-05
在ajax應用中,有時會需要在前臺某個時刻呼叫後臺的方法,這可以藉助AjaxPro輕鬆實現。
1.到http://ajaxpro.info下載最新包。我下的是9[1].2.17.1版。裡面包含4個dll和一個xml。
2.在使用之前,需要新增AjaxPro.dll的引用,其他的dll不要新增,否則會引起衝突!
3.修改web.config
在system.web節點下新增:
<httpHandlers>
<add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro.2"/>
</httpHandlers> 4.在.NET方法中向客戶端註冊javascript,並將要呼叫的.NET方法新增AjaxMethod屬性
以下為引用的內容: namespace MyDemo
{
public class _Default
{
protected void Page_Load(object sender, EventArgs e)
{
AjaxPro.Utility.RegisterTypeForAjax(typeof(_Default));
}
[AjaxPro.AjaxMethod]
public DateTime GetServerTime()
{
return DateTime.Now;
}
}
}
5.在客戶端用javascript呼叫伺服器端的方法:
function getServerTime()
{
MyDemo._Default.GetServerTime(getServerTime_callback); // asynchronous call
}
// This method will be called after the method has been executed
// and the result has been sent to the client.
function getServerTime_callback(res)
{
alert(res.value);
} 就這樣,簡單的幾步,就已經完成了。在客戶端用javascript非同步呼叫伺服器端的C#方法,並可以得到伺服器端的返回值,這個值會傳到javascript,javascript可以處理這個返回的值,這個示例是官方給出的示例,伺服器端返回的是一個DateTime,不過,我們也可以返回複雜的資料型別,像DataTable之類,總之,AjaxPro把Ajax搞得很簡單。