图书前言

前    言

  还记得在2004年秋天的一个知名软件大会上,我发现许多厂商都在用一个新名词AJAX来宣传他们的ASP.NET产品。几周之后,一个全新的编程模型便出现在我的ASP.NET大师课程当中——使用AJAX提升用户体验。就其本质而言,AJAX是一种非常轻量级的技术。它不新鲜——早在2000年的TechEd大会上,我就向一些从事C++开发的听众演示过AJAX的引擎(XmlHttpRequest),这甚至比.NET平台的发布还要早4个星期。

  由于广为人知,这种称为AJAX的技术改变了Web开发的思路。AJAX在Web世界中带来了一系列连锁反应,使Web应用程序发生了范式转移。从科学发展史的角度看,范式转移往往具有深远的影响,尤其是在之前的思想在人们心中根深蒂固时。如今,当我们在谈论Web时,不必再刻意强调其是否支持AJAX,只说Web就可以了——它包含富客户端组件、可调用的HTTP端点和可互换的样式。

  不管人们是否接受,越是贴近AJAX,距离ASP.NET的“Web窗体”(Web Form)就越远。随着Web的发展,Web窗体在某些分支中可能不像其他技术表现得那么出色,而最终被淘汰。

  那是否意味着本书不是读者所需要的书,或者根本就选错了技术呢?当然不是。

  ASP.NET Web窗体到目前为止仍然是Web开发的有力工具。现在还不是淘汰它的时候。我们不妨将更多的注意力放在Web窗体一直有意对开发者隐藏的那部分技术上——CSS、JavaScript和HTML标记。

  在我的ASP.NET大师课程中,我曾经演示过如何显示一个可绑定数据的网格控件,其支持在单击某个单元格时触发AJAX调用。我的操作步骤完全遵循典型的ASP.NET开发技术规范。在后续的课程中,我鼓励学员对其进行重写,而不使用内联的脚本和样式设置。我还让那些了解jQuery的学员不要使用它(这似乎有些偏执)。重写的过程就是思考和创新的过程,而我所编写的代码也逐渐完善。不论ASP.NET MVC(一种与ASP.NET Web窗体相对应的技术)如何改进,ASP.NET Web窗体都不会消亡,但在某些方面确实会体现出技术的陈旧。作为开发者,我们要发现这些不足,并通过合理使用模式并引入JavaScript、jQuery、AJAX等技术来使其焕发生机。

  在本书中,我去掉了之前的一些经典话题(如ADO.NET和LINQ to SQL),也压缩了介绍控件的部分。我增加了对ASP.NET底层机制、ASP.NET配置、jQuery以及模式与设计原则的介绍。坦言之,ASP.NET自2.0版本以来并没有很大变化。由于篇幅所限,本书也没有涵盖一些与ASP.NET自定义有关的高级话题,如表达式生成器、自定义提供程序和页面解析器。这些内容已在我的《ASP.NET 2.0高级编程》一书中做了详细的讲解(虽然此书针对2.0平台,但如今仍然适用)。本书新增的软件设计原则方面的内容是对我另一部拙著思想的提炼——Microsoft .NET: Architecting Applications for the Enterprise (Microsoft Press, 2008)(该书是我与Andrea Saltarello合著的)。

读 者 对 象

  本书不适合初学者,书中不包含网页设计和编码方面手把手的指导。如果只对ASP.NET有模糊的认识,并希望能够快速、有效地掌握这门技术,那么并不适合选择本书。本书要求读者预先了解ASP.NET的基础知识和特性。

  本书并不包含演示Microsoft Visual Studio向导的屏幕截图,也不会逐一讲解某些定制程序行为的选项。当然,这并不意味着我不喜欢或不推荐使用Visual Studio来开发ASP.NET应用程序。Visual Studio是编写ASP.NET应用程序的强大工具。但从ASP.NET的角度而言,Visual Studio只是一个工具而已。本书会将重点放在ASP.NET的核心特性上。

  如果您具有构建简单ASP.NET页面的基础知识,并能够轻松处理Web开发所遇到的常见问题,那么我将本书推荐给您。本书不是只包含现成的(直接可用的)ASP.NET代码的初级教程,而是在那之后的进阶。本书将向读者解释ASP.NET的工作原理、开发者的控制范围以及ASP.NET的最佳实践与不良实践。本书不适合初学者,但仍可以将它放在案头以供查阅。

系 统 要 求

  为生成和运行本书配套的示例代码,需具备以下软件和硬件。

* Microsoft Windows 7、Microsoft Windows Vista、Microsoft Windows XP with Service Pack 2、Microsoft Windows Server 2003 with Service Pack 1或 Microsoft Windows 2000 with Service Pack 4。

* 任意版本的Microsoft Visual Studio 2010。

* 选配“Internet信息服务”(IIS),可以用它在实际的运行时环境中测试示例程序。

* Microsoft SQL Server 2005 Express(Visual Studio 2008附带)或更高版本,或者Microsoft SQL Server 2005或更高版本。

* 全书与数据访问有关的示例程序都会使用Microsoft SQL Server 2000的Northwind数据库。

* 766 MHz奔腾或兼容的处理器(建议选用1.5 GHz奔腾或更高性能的处理器)。

* 256 MB内存(建议使用512 MB或更高容量)。

* 至少支持800×600、256色的显示器(建议选用1024×768、16位高色彩)。

* CD-ROM或DVD-ROM驱动器。

* Microsoft鼠标或兼容的指点设备。

示 例 代 码

  可以访问以下网址,并在Companion Content页面下载与本书配套的所有代码:

  http://go.microsoft.com/fwlink/?Linkid=2097721

勘误与内容支持

  我们已竭尽全力确保本书及其配套内容的准确性,但错误在所难免。如有发现,欢迎通过以下步骤反馈给我们。

(1) 访问Microsoft Press在oreilly.com 的主页:http://microsoftpress.oreilly.com。

(2) 在Search文本框中输入本书的ISBN或书名。

(3) 在搜索结果中选择本书。

(4) 在本书信息页面的封面图片下会有一列链接。

(5) 单击View/Submit Errata。

  本书的信息页面包含与本书有关的信息和服务。如果需要其他帮助,可以发送电子邮件到Microsoft Press Book Support部门:mspinput@microsoft.com。

  请注意,上述方式不提供对Microsoft软件产品的支持。

读 者 反 馈

  Microsoft Press希望收到读者的反馈。欢迎访问以下页面:

  http://www.microsoft.com/learning/booksurvey

  这是一个简短的问卷。我们将认真考虑来自您的每条意见和建议。感谢您的参与!

沟 通 渠 道

  读者可以通过Twitter与Microsoft Press进行互动:http://twitter.com/MicrosoftPress。

  

           1 译者注:实际的下载页面位于http://examples.oreilly.com/9780735643383-files/。

  ---------------

  

  ------------------------------------------------------------

  

  ---------------

  

  ------------------------------------------------------------