第一图书网

ASP.NET AJAX服务器控件高级编程

(美)卡尔德诺 等著,罗江华 等译 机械工业出版社
出版时间:

2009-9  

出版社:

机械工业出版社  

作者:

(美)卡尔德诺 等著,罗江华 等译  

页数:

401  

Tag标签:

无  

前言

  介绍  服务器控件是我们所构建的ASP.NET应用程序不可或缺的一方面.它们将浏览器外观和服务器功能封装于一个可重用的对象之中.它们可以在一个单独的ASP.NET应用程序中跨多个页面使用,同时还可以跨多个ASP.NET应用程序使用.ASP.NET有许多预构建的服务器控件.我们有一些简单的控件(例如,标签),还有一些类似GridView这样的复杂控件.我们可以创建自己的服务器控件来实现没有一个现有控件可以满足的需求,只需要通过继承合适的基类然后重载所需的方法,即可实现。  这种使用服务器控件的方式封装了浏览器的外观和服务器功能的模式,从起初的ASP.NET1.0开始就很好地为我们的需求服务,但是我们对服务器控件的需求一直在改变。  最近刚出现的新服务器控件需求,就是与AJAX功能的结合能够直接放在服务器控件的能力.  这种需求出现的原因是,我们的Web应用程序需要更立即的响应以及比传统ASP.NET控件提供的重画整个屏幕的那种模式更直观的交互性。这种需求已经浮现出来,因为用户正在使用类似Gmail、Live.com、Yahoo!Mail以及其他一些不需要每次点击一个按钮或需要接收新数据时重画屏幕这样的站点.所以,它们选择了AJSX来获取新的数据,然后基于所取得的新数据来更新或添加屏幕的一部分.因为这些站点的大量应用,用户在使用这些站点的过程中已经习惯了这种体验,他们期望其他站点也能够像他们所喜好的这些站点一样,表现得同样优雅。  因为我们的用户正在要求一种本质上使用了AJAX的站点体验,我们使用服务器控件来构建我们的ASP.NET站点,我们需要一个简单的方式来创建服务器控件,不仅需要封装浏览器外观和服务器功能,而且还要包含AJAX的功能,这样服务器控件才启用了AJAX功能.  退一步看,不像其他一些你可能已经读到过的技术,ASP.NETAJAX服务器控件没有提供任何不能实现的东西.我们总是能够将AJAX功能嵌入服务器控件中……这还真苦恼。  我们曾有好几种方法在服务器控件中包含JavaScript,比如将其作为一个资源嵌入,但是我们最终其实还是要做相同的三个任务.为了让我们的服务器控件具有客户端的兼容性,我们总是需要连接几个字符串来构成一个JavaScript语句和功能,写探测浏览器的语句来确保JavaScript有跨浏览器的兼容性,然后添加属性或呈现出附着JavaScript功能到服务器控件的客户端版本的HTML.这并非不可能,但是这通常有某种错误倾向,而且总是有这种服务器代码和JavaScript的混合,而变得很难维护,甚至是更难以阅读。另外,如果你有几个拥有客户端能力的服务器控件,要确保每个服务器控件要求的客户端功能在呈现到浏览器时没有相互覆盖,这是很困难(并非不可能)的事情.跟踪到那样的问题也总是要大约有趣的一个小时吧。  如果我们想要包含一个用户能在服务器控件中点击按钮时与服务器异步通信的机制,那么困难度就会呈指数上升.就算是有一个通信库的帮助器工具,让控件正确地和服务器通信还是需要一些诀窍。  这些妨碍很有问题,会导致一些不好的编程习惯和代码,会吓跑一些程序员,让它们甚至不敢尝试在它们的服务器控件中包含进AJAX功能。  这些问题正是微软ASP.NETAJAX所解决掉的问题。  在本书中,我们教你如何使用ASP.NETAJAX来创建封装了AJAX功能的服务器控件.ASP.NETAJAX提供了服务器和客户端编程的构建模型,用来轻易地添加AJAX能力到服务器控件.但是ASP.NETAJAX减少了给服务器控件添加AJAX能力的复杂性,我们可以创建那些有AJAX能力的服务器控件,只会受到自己的创造力的限制.如果我们想要一个能够自己根据新数据更新的列表框,如果我们想要一个能动态从服务器生成预先键入(type-ahead)的文本框,或者我们想要一个按钮来提交地址去验证,我们都可以轻易地通过ASP.NETAJAX来完成这些事情。

内容概要

本书介绍了如何使用ASP.NET AJAX来创建具有AJAX功能的服务器端控件,通篇都结合ASP.NET AJAX的三个方面:Microsoft AJAX库、ASP.NET 2.0 AJAX扩展以及ASP.NET AJAX控件工具箱来进行探讨。本书被分成了四个主要部分。第一部分主要聚焦Micosoft AJAX库和JavaScript语言。第二部分主要讲述创建分布式的启用AJAX的控件。第三部分介绍通信,阐述了客户端控件与服务器端交流时的不同之处。最后,在第四部分,重点介绍了ASP.NET AJAX控件工具箱的相关知识。 本书内容详实,结构清晰,图文并茂,可作为相关技术人员的参考书籍。

作者简介

Adam Calderon是interknowlogy公司应用程序开发实践团队负责人也是微软MVP。他从Alpha版本开始对ASP.NET AJAX进行研究,并且将这项技术率先应用到了ATLAS访问程序中。他是微软UI服务器框架咨询理事会的成员,参与引导微软ASP.NET平台未来的发展方向。Adam也是开发社区的活跃

书籍目录

译者序对本书的赞誉序言前言致谢第一部分 客户端代码 第1章 JavaScript编程 1.1 常规的JavaScript 1.2 string 1.3 面向对象JavaScript编程 1.4 小结 第2章 微软AJAX库编程 2.1 扩展内置的JavaScript类型 2.2 扩展微软 AJAX库 2.3 重要的新类型 2.4 维护范围 2.5 小结第二部分 控件 第3章 组件 3.1 组件定义 3.2 Sys.Component 3.3 控件 3.4 behavior 3.5 小结 第4章 Sys.Application 4.1 背景资料 4.2 组件管理 4.3 初始化流程 4.4 unload流程 4.5 小结 第5章 为服务器控件添加客户端能力 5.1 脚本生成体系结构 5.2 使用ExtenderControl添加客户端behavior 5.3 使用ScriptControl添加客户端功能 5.4 使用IScriptControl接口添加客户端功能到复合控件中 5.5 小结 第6章 ASP.NET AJAX本地化 6.1 ASP.NET中的本地化 6.2 ASP.NET AJAX本地化 6.3 小结 第7章 在局部回传环境中进行控件开发 7.1 UpdatePanel行为 7.2 局部回传在客户端组件的效果 7.3 JavaScript语句和文件的加载 7.4 Sys.Application 事件 7.5 小结第三部分 通信 第8章 ASP.NET AJAX 通信架构 第9章 应用程序服务第四部分 AJAX控件工具箱 第10章 ASP.NET AJAX 控件工具箱架构 第11章 使用ASP.NET AJAX工具箱给服务器控件添加客户端功能第五部分 附录 附录A Visual Studio 2008中的JavaScript 附录B 验证方法参数 附录C ASP NET handlers和modules 附录D 客户端错误处理代码

章节摘录

  产品类为前面讲过的产品服务提供方法签名和数据类型声明。这个代理类从概念来说与生成Web服务代理类相似,在.NET中与Web服务工作,同时提供了许多抽象类,使得这一模型如此成功。依赖于服务器生成产品类是用来创建操作一个实例类,这个实例类被初始化,运用新的操作符或者提供两种不同的方式与产品服务交互的静态类。实例的实现提供了一种灵活的调用服务的方式,使用一套独特的设定来实现每个调用。静态实现提供了一个全球化的方法来调用服务,巩固设置,并利用它们的实现每个调用。在我们讨论产品类之后,我们指出了我们所支持的方法的区别,以及它们所提供的优势。  如程序清单8-20所示,在JavaScript函数表明了调用静态代理类时的一种普通模式,这个静态代理类提供了一种方法处理寻找服务器和两个回调函数处理异步响应。用产品类工作时,首先要了解的是命名空间从何而来。所有代理类都要使用的命名空问,是取决于Service-Contract属性的命名空间性质应用于服务类。就我们而言,我们使用的是ajaxbooksam-ple.com,它是当我们创建自己的激活AJAX WCF服务时所使用的名字。  在代理生成期间,在代理类上为每个操作创建一个方法,这些方法被服务公开。这些方法本身由一种与服务器略有不同的签名组成,其中部分原因是启动了产品类WebServiceProxy的基础服务。在我们的Lookup方法中,有一个附加的参数设置,其中包括一个可选的成功回调函数指针,一个可选的失败回调函数指针和一个可选的用户上下文参数。当异步请求结束的时候,这两个回调函数被代理类用来回调进JavaScript代码用户上下文参数提供了一种方式来传递用户自定义的异步调用数据,并在调用结束之后使其可用。当你有一个处理所有服务操作的请求和你需要复交的上下文信息,来成功封装调用的共同回调函数时,这将会很有用。  当Web服务请求成功,并且传递JavaScript对象表示的JSON反串行化结果,用户上下文值和Web服务方法名被调用时,onSuccess回调函数将被调用。当Web服务请求失败,并传递一个WebServiceError对象实例,用户上下文值和Web服务方法名被调用时,onFfiled回调函数将会被调用。被传人的WebServiceError对象包含一个标志位标明请求是否已超时,以及请求的错误信息、栈追踪、异常类型和状态码(见表8-4)。这些值可以用来帮助判定传输过程中发生的错误类型。

媒体关注与评论

  “如果你是一位ASP.NET开发人员,并且正在寻找使用AJAX技术来开发基于Web 2.0应用程序的捷径,那么本书正是你需要的。使用你了解到的工具和方法来构建一个具有超强交互的AJAX功能正是当代Web应用程序所需要的。”  ——Shawn Burke 微软AJAX控件工具箱主管  “你知道什么令人沮丧?”当我阅读或听到一种技术,并开始使用它,然后因为文档提供的示例概念过于简单或者一本仅对文档进行简单介绍的参考书籍时,就是这样的心情。Adam Calderon和Joel Rumerman将使你构建ASP.NET AJAX服务器控件的技能更上一层楼。它们不仅为你展示应该如何使用这项技术,而且还深入地探讨了其内部机制。本书适合那些想要通过自定义方式来封装一些比UpdatePanel控件更复杂的控件的读者。如果你正在寻找这样一本资料,那么这本书是最好的了。”  ——Thomas Lewis 微软Web用户体验宣传经理  “本书是讲述AJAX框架方面最完整、最权威的一本指南,作者对该项技术的灵活性、扩展性进行了深入浅出的剖析,本书适合初级、高级开发人员。”  ——Jason.Schmitt Steelbox Networks公司产品副总裁  众望所归“Adam Calderon和Joel Rumerman推出了这本以构建AJAX服务器控件为主题的书籍。本书是专门针对ASP.NET AJAX开发人员的“红药丸”(参看电影《黑客帝国》)。自定义控件和组件是所有.NET开发人员进行代码重用的最好机会,本书将控件开发引入了AJAX时代。”  ——Joe Stagner 微软开发工具和平台高级程序经理  本书得到了微软核心技术团队负责人和多位作者的支持。该系列的作者团队中汇聚了很多技术专家,他们有的在微软从事软件技术架构、软件开发工作,还有来自外界社区的开发人员。  —— Don Box 微软架构师  对专业.NET开发者来说,本书是一个重要资源。它涵盖了所有的基础知识,从专家的观点到引证,再到操作方式。这一系列的书籍是那些想扩展基础知识和专业技能人员的必备书籍。  —— John Montgomery 微软开发区、主群组程序经理  本系列包含对开发者来说很重要的信息,他们需要从.NET Framework中获得大量信息。我们的作者都是选自创造这些技术的关键人物,也是最受尊敬的专业人员。  —— Brad Abrams 微软组群程序经理


编辑推荐

  ASP.NET AJAX服务器控件甚至能封装最强大的AJAX功能。帮助你构建更加优雅、可维护和可扩展的应用程序。这是第一本针对有经验的ASP.NET开发人员所编写的用于实现自定义ASP.NET AJAX服务器控件的书籍。不同于其他ASP.NET AJAX书籍,《ASP.NET AJAX服务器控件高级编程(.NET3.5版)》专注于服务器控件的开发以及在ASP.NET 3.5 AJAX中所展现出来的效率提升,并且探讨在最新的Visual Studio 2008中如何加快开发AJAX的特性。  创建面向对象的跨浏览器的JavaScript代码,可以支持.NET样式的类、接口、继承和方法覆盖。  与组件、行为和控件一起工作并了解它们如何与DOM元素关联。  了解Sys.Application以及在微软AJAX库中进行对象创建、初始化和事件处理所扮演的作用。  构建Extender和Script控件,提供集成的脚本生成相应的客户端副本。  本地化ASP.NET AJAX控件,包括客户端脚本。  发现ASP.NET AJAX客户端和服务器之间的通信架构和针对Windows Communication Foundation(WCF)新的支持。  理解ASP.NET AJAX应用程序服务。  创建自定义应用程序服务。  为局部环境回传设计控件。  理解ASP.NET AJAX控件工具箱的体系架构及它所提供的诸多特性。  使用AJAX控件工具箱开发具有高交互性的控件。  理解AJAX控件工具箱的体系架构并充分利用工具箱来构建控件。

图书封面

图书标签Tags

广告

下载页面


ASP.NET AJAX服务器控件高级编程 PDF格式下载



是帮男友买的啊,去书店去买都是原价,很贵的,在这边买了,书是绝对的正版,但是价格要比书店便宜好多啊。很好,很喜欢啊。一次买了三本不同的相关类的书呢啊。


内容不错。值得阅读!纸张不是很好。感觉不值这么多钱。


一般。书内容不错


封面都破了,这样的书就不能出库


相关图书