您现在的位置: IT专家网 > Web服务子站 > WebService领域
ASP.NET 2.0 Client Callback 浅析
ASP.NET 2.0 Callback 使得ASP.NET Server端控件能够调用服务端的方法而不需要执行一个完整的Postback过程,也就是说使得Server端控件可以很好的支持Ajax。
ASP.NET 2.0 Callback 使得ASP.NET Server端控件能够调用服务端的方法而不需要执行一个完整的Postback过程,也就是说使得Server端控件可以很好的支持Ajax。
Callback不同于Postback之处在于向服务器发送请求时只有ViewState和用户自定义信息被发送到服务器端,请求完毕后,只返回用户自定义结果,而不会从Render页面。
GridView控件正是使用了这个技术来实现无刷新的分页及排序功能,那么它是如何实现的哪,我们又如何在自定义控件中添加该功能哪?本文将会简单地阐述如何使用ASP.NET 2.0 Callback来实现Ajax.
1. ICallbackEventHandler 接口
ASP.NET Server端控件可以通过实现ICallbackEventHandler 接口来接受客户端Callback事件。
ICallbackEventHandler 接口声明:
| 1public interface ICallbackEventHandler
2{ 3 string GetCallbackResult(); 4 void RaiseCallbackEvent(string eventArgument); 5} |
GetCallbackResult则负责将处理结果作为String返回给客户端脚本。当Callback完成后客户端脚本将会根据得到的处理结果,进行页面局部更新。
2. CallbackEventReference
那么怎么样才能注册一段客户端脚本来触发Callback,还需要做些什么哪?
ClientScriptManager类用于管理Web页面中的客户端脚本,提供了一系列的方法来注册脚本,并且还可以获得指定客户端脚本函数的引用。
通过ClientScriptManager类的GetCallbackEventReference方法我们可以获取一个对客户端函数的引用。当该函数在客户端被调用时,将启动一次客户端回调。
GetCallbackEventReference方法声明:
| public string GetCallbackEventReference (
Control control, string argument, string clientCallback, string context, string clientErrorCallback, bool useAsync ) |
- 本文关键词:

