ASP.NET是微软公司构建高交互性、高扩展性网站的旗舰技术。许多在因特网上提供服务的大型网站都构建于ASP.NET Framework之上,如戴尔网站(www.Dell.com)、MySpace网站(www.MySpace. com)以及微软公司自己的网站(www.Microsoft.com)。如果你需要构建一个能同时处理数千个并发请求的高交互性网站,那么ASP.NET技术是一个不错的选择。.
读者对象
本书为需要创建网站的专业程序员而写,是一本使用ASP.NET 3.5创建网站的十分全面的参考书。本书提供的资源包含了数百个在创建网站时可以直接使用的示例代码。
如果你是一位使用ASP.NET创建网站的新手,那么可以通过阅读本书学会关于使用ASP.NET Framework构建一个网站所需的所有知识。如果你是一位经验丰富的ASP.NET开发者,则可以使用本书学习ASP.NET 3.5的新特性。
第2卷的最后部分包含了一个使用ASP.NET 3.5编写的完整的应用示例:一个代码示例网站。随书提供的资源 中包含了该应用的所有代码(含C#和VB.NET两个版本)。
预备知识
本书假定你掌握了C#或Visual Basic .NET编程语言。如果你是一位纯粹的.NET Framework新手,那么我建议你在阅读本书前先读一本介绍C#或Visual Basic .NET的书。
在本书的正文部分,所有的示例代码都使用C#语言。但这并不是故意歧视VB.NET程序员。随书提供的资源中包含了所有代码示例的VB.NET语言版本。
为了从数据库访问章节学到更多的知识,你还应该拥有一些使用SQL Server、Oracle或者Access等数据库的经验。
本书变化
新版本反映了ASP.NET Framework三个重要的变迁。
首先(也是最明显的),与旧版本所不同的是,这一版本所有正文中的示例代码都使用C#编程语言编写。现在,专业的C#开发者要多于Visual Basic .NET开发者。本书的更新反应了这个重要的变迁。如果你偏爱Visual Basic,可以在随书提供的资源中找到所有示例代码的Visual Basic .NET版本。
其次,增加了新的章节,详细介绍了微软LINQ to SQL。LINQ to SQL是一种新的查询语言,它使你可以不编写任何SQL而访问数据库。本书从ASP.NET的视角考察LINQ to SQL(参见第18章)。
还增加了新的章节专门介绍ASP.NET 3.5 Framework引入的两个新的数据访问控件:ListView和DataPager控件。ListView控件是GridView控件更灵活的版本(参见第14章)。
ASP.NET 3.5 Framework第三个重要的变迁是关于AJAX的。ASP.NET 3.5 Framework集成了微软AJAX Extensions for ASP.NET。AJAX代表了构建Web应用所使用的技术从服务器端到客户端的变迁。..
Ajax从原理上改变了开发者构建网站的方式。用户将不再满足于基于服务器端技术构建的缓慢且交互性差的Web应用。他们需要类似桌面应用的响应迅速、交互性强的Web应用。
本书包含3个章节专门介绍Ajax这一十分重要的话题。你将学习如何利用微软服务器端Ajax框架,以编程的方式使现有ASP.NET应用包含Ajax。你同样还将学习如何利用微软客户端Ajax框架创建未来的Web应用:纯粹的客户端Ajax应用(参见第2卷第四部分)。
本书最后一章包含一个由LINQ to SQL和服务器端Ajax编写的全新的示例应用。示例应用演示了如何在构建现实Web应用时利用这些新技术(参见第2卷第13章)。
本书结构
虽然我鼓励你从头到尾、一章接一章地阅读本书,不过我知道不是所有人都有时间这样去阅读的。必要时,你可以把本书作为参考书,在需要的时候直接阅读书中的某个章节。因此,对本书内容的整体结构有所了解是很有帮助的。
.全书分两卷,第1卷主要是基础知识,分五个部分:
第一部分:创建ASP.NET页面——本部分概述了ASP.NET Framework中的基本控件集。你将学习如何使用Form控件创建交互式的Web Form,也会学习如何使用验证控件验证表单数据,最后还将学到使用那些Rich控件来实现文件上传,显示与用户交互的日历和向导。
第二部分:设计ASP.NET网站——本部分论述怎样为网站的页面建立统一的布局和样式。你将学习使用母版页在多个页面共享内容,以及如何使用主题创建一致的页面样式。
第三部分:数据访问——本部分关注数据访问的问题。你将学习如何使用ListView和GridView控件来显示、分页、排序和编辑数据库记录集。你还将学习如何使用DetailsView和FormView控件来一次显示和编辑一条数据库记录。
第四部分:创建组件——本部分关注创建自定义组件。你将学习如何设计和创建多层结构的应用,还会学习如何利用LINQ to SQL和ADO.NET来创建数据访问组件。
第五部分:站点导航——本部分讨论包含在ASP.NET Framework中大量的导航控件,例如TreeView和Menu控件。你将学习如何通过Site Map来使用户方便地在网站中导航页面,也会学习如何使用VirtualPathProvider类来从文件系统中提取网站。例如,如何把网站中的页面保存在微软SQL Server数据库中。
第2卷是高级主题,也分为五个部分 :
第一部分:安全——本部分关注Login控件和Membership API。你将学习如何创建用户注册和验证系统,以及如何把Membership信息保存在SQL Server数据库或活动目录(Active Directory)。
第二部分:构建ASP.NET应用——本部分讨论各种关于构建ASP.NET应用的话题。例如,如何利用Caching来改善ASP.NET应用的性能;如何本地化ASP.NET应用,以使它易于翻译,以不同的人类语言表述。
第三部分:构建自定义控件——本部分关注使用自定义控件扩展ASP.NET Framework。例如,你将学习如何创建与ListView和GridView控件类似的自定义数据访问控件。
第四部分:ASP.NET AJAX——本部分关注在ASP.NET应用中使用Ajax。前两章讨论了微软服务器端控件,你将学习如何使用UpdatePanel控件和ASP.NET AJAX Control Toolkit。在最后一章,你将学习如何使用微软AJAX库创建纯粹的客户端Ajax应用。
第五部分:示例应用程序——本书的最后一部分是描述一个示例应用程序的单独章节。你将学习如何利用LINQ to SQL以及AJAX Extensions to ASP.NET等ASP.NET 3.5特性,创建一个基于ASP.NET Framework的代码示例网站。...