asp.net ajax是一个完整的Library
iis7站长之家框架,其服务器端编程模型相对于客户端编程模型较为简单,而且容易与现有的asp.net程序相结合,通常实现复杂的功能只需要在页面中拖几个控件,而不必了解深层次的工作原理,除此之外服务器端编程的ASP.NET AJAX Control Toolkit含有大量的独立AJAX控件和对ASP.NET原有服务器控件的AJAX功能扩展,实现起来也非常简单。但是鱼与熊掌不可兼得,服务器端编程相对于客户端编程在执行效率和可控性上有较大差距。
Ajax与ASP.NET
ASP.NET AJAX是一个完整的开发框架,它与ASP.NET 无缝集成,使用ASP.NET Ajax可以很容易的添加Ajax效果,通常实现复杂的功能只需要在页面中拖几个控件,而不必了解深层次的工作原理,另外ASP.NET AJAX Control Toolkit含有大量的独立AJAX控件和对ASP.NET原有服务器控件的AJAX功能扩展,实现起来也非常简单。ASP.NET Ajax编程分为客户端编程和服务端编程,服务端编程相对于客户端编程较为简单,但服务器端编程相对于客户端编程在执行效率和可控性上有较大差距。
由组件图可以看出,整个ASP.NET Ajax基于ASP.NET,再向上分为Microsoft AJAX Library和ASP.NET AJAX Extensions,在此两项基础上,发展出ASP.NET AJAX Control Toolkit。
Microsoft AJAX Library
Microsoft AJAX Library,是ASP.NET中的客户端框架,面向客户端编程。
基础扩展
Microsoft AJAX Library对javascript进行了扩展,增加了javascript中没有的方法和属性;同时提供了更多的内容,例如stringBuilder类、component模型等;它也把javascript中的对象进行了封装,可以更简单直观的实现原有功能。
浏览器兼容层
Microsoft AJAX Library帮助屏蔽了浏览器的差异,使得程序员可以不用再针对不同的浏览器编程。
面向对象
javascript是一种基于原型的脚本语言,它并没有真正实现面向对象中的类、继承等特性,Microsoft AJAX Library对javascript进行了封装,提供了更直观的面向对象编程方法,使得程序更易维护
ASP.NET AJAX Extensions
面向服务端编程,它主要包含常用的ScriptManager、Updatepanel、Extender等控件,ScriptManager对其它ASP.NET AJAX控件进行控制,通过对这些控件的简单编程,即可实现Ajax效果。
AJAX Control Toolkit
它基于服务端的Extender和客户端的Behavior,通过扩展已有控件,为其添加javascript功能,由社区支持开发,使用Toolkit可以很容易的添加Ajax效果。