其次,ASP.NET 2.0 包含能够在 Web 站点中的页之间确保一致性和代码重用的功能。母版页的引入将使开发人员能够在多个页之间快速共享布局,方法是设计指定控件、菜单栏、页眉和页脚位置的模板(图 14)。与 Windows 窗体中的可视化继承类似,母版页使 Web 站点中的其他页可从母版页继承从而自动获得外观。当开发人员要更改所有页的布局时,只需对母版页进行更新。其他的平台工作效率增强功能包括一组可以简化很多常见 Web 方案(如身份验证、站点导航、管理、个性化等)的框架服务。这些增强功能可减少代码膨胀,增加可维护性,并简化大多数常见 Web 应用程序开发任务的实现。
图 14. 通过母版页可在多个页之间有效地共享 Web 站点布局。设计器中的灰色区域表示母版页布局;白色区域表示可编辑的页内容。
ASP.NET 还有一项新增功能,即合并主题和外观以增强 Web 应用程序的外观。外观是一组属性、模板和自定义代码,可用于将页上控件的大小、字体和其他特征进行标准化。主题合并了多个外观和样式表来指定 Web 站点的整体外观。主题和外观将易于打包、传输以及应用于其他 Web 站点。此外,ASP.NET 将提供多个内置主题,以便开发人员可轻松生成具有艺术美感的 Web 站点。
第三,使用 ASP.NET 2.0 的 Web 应用程序开发人员将能够利用 SQL 缓存无效化来提高其应用程序性能。通过缓存从 SQL Server 数据库中检索的数据(更新该数据之前),这种数据缓存方法将显著提高性能。通过当前可用版本的 SQL Server,ASP.NET 将按照指定的时间间隔轮询该数据库,以确定是否已经对该数据进行更新。然后,只有当有迹象显示对该数据进行了更新时,ASP.NET 才会重新查询该数据库。但是,在针对 SQL Server 2005 数据库进行开发时,开发人员将能够在不确定的时间内缓存数据驱动的页。具备这一功能的原因是 SQL Server 2005 能主动将对数据进行的更改通知 ASP.NET。SQL 缓存无效化的内部测试已证明了,性能好处最高为非缓存数据方案的 10 倍。
第四,通过使用 Visual Studio 2005 IDE,Web 应用程序开发人员将体验到工作效率方面的显著改善。在启用新的 Web 开发人员 IDE 配置文件后,Visual Studio 2005 将只公开与 Web 应用程序开发有关的功能,从而优化开发环境和用户体验。此外,新的基于目录的项目模型将消除解决方案文件的系统开销,同时通过对直接 IIS 枚举、FTP 和文件系统访问的支持,使 Web 开发人员能够享受传统的基于文件系统的项目范型。结果,FrontPage Server Extensions 不再是生成 ASP.NET 页的必要条件。
最后,对 ASP.NET 代码隐藏模型的增强消除了对由脆弱工具生成的代码的依赖,这些代码是传统意义上协调 ASP.NET 2.0 Web 页与其关联类文件所需的。使用不完全类,ASP.NET 提供一个更为可靠的模型,以分隔表示标记与代码。不完全类还将使开发人员能够轻松地以内联方式编写代码(图 15),从而遵守很多 Web 开发人员所熟悉的模型。其他对 Web 开发的 IDE 工作效率增强功能包括:设计时验证引擎、内联 CSS 支持、更灵活的调试等。
图 15. 通过脚本块中的智能感知可以在设计时执行语句完成和语法检查。
通过在控件集、可视化设计器和编码体验中计划的改进,ASP.NET 2.0 将完成常见编码方案所需的代码量最多减少 70%,从而大大简化 Web 应用程序开发体验。
基于设备的开发
通过 Visual Studio .NET 2003 和 .NET Compact Framework,使用 Visual Basic 和 Visual C# 的开发人员获得如下功能:使用与基于桌面和 Web 的开发相同的工具和方法来生成基于设备的应用程序。在 Visual Studio 2005 中,将对智能设备可编程性进行扩展,以便包含更新版本的 .NET Compact Framework,以及对从 IDE 中进行本机 Visual C++ 智能设备开发的支持。
通过在 Visual Studio 2005 中包含本机 Visual C++ 智能设备开发,使开发人员在为 Pocket PC、Smartphone 和其他 Microsoft Windows 驱动设备开发应用程序时具有更大的灵活性。面向移动设备的开发人员将得益于以下几方面:本机 Visual C++ 开发功能和一致的开发体验在所有 Visual Studio 项目类型(从智能设备到 Windows 服务器)中的紧密集成。
对于使用 .NET Compact Framework 生成托管应用程序的开发人员而言,Visual Studio 2005 将支持创建可以在最新设备(包括 Smartphone、基于 Windows CE .NET 的设备和最新版本的 Pocket PC)上运行的应用程序。该版本还将引入一些新的类和控件,用于访问电话功能、消息处理 (MSMQ) 和短消息服务 (SMS)。最后,本机代码互操作性增强功能(包括改进的封送处理、COM 互操作性和运行库承载)将改善智能设备应用程序开发体验。
数据访问 (ADO.NET)
通过第一版的 .NET Framework,Microsoft 引入 ADO.NET ― ActiveX 数据对象 (ADO) 的演进产品。ADO.NET 设计为以本机方式支持 XML 以及传统的数据集,它提供强类型的分布式数据访问并通过广泛使用本地数据缓存和开放数据库连接防止不必要地占用数据库端口。产生的性能和可伸缩性方面的改进提供了一个坚实的基础,可在其上增强将来版本的 ADO.NET。
在 .NET Framework 2.0 中,通过添加新的数据访问控件、服务,与 SQL Server 2005 更无缝集成的功能,以及对 ADO.NET 类库本身的改进,数据访问将得到增强。这些增强功能将集中于使用的简易性、代码可重用性以及对 XML 的改进支持等方面。
首先,对数据访问对象模型的可用性进行大量改进。尽管 .NET Framework 的初始版本主要致力于为数据访问开发人员提供强大的核心,但 .NET Framework 2.0 将用附加的类扩展该核心,以便进一步提高开发人员工作效率。此外,跟踪支持将得到改进,以便在多个层以及 .NET Framework 托管代码和本机代码中对数据访问组件进行细致调试。
其次,.NET Framework 2.0 将包含用于对 XML 进行编辑、调试和编码的增强工具以及相关技术(图 16)。除在访问和管理 XML 时提供改善的性能以外,.NET Framework 2.0 版还提供一些扩展功能,用于执行与 XML 操作有关的常见任务,以及其他基于 XML 的标准和技术。
图 16. 新的 XML 编辑器支持 XSLT 的大纲显示、验证和编辑。
最后,Visual Studio 2005 中用于创建 XML 架构的增强功能包括从现有 XML 文档中推断 XSD 架构的功能,以及对基于 XML 的数据处理(使用 XML 查询语言 (XQuery))的本机支持。
高级 Web 服务
通过 Visual Studio .NET 2002 和 2003,开发人员可轻松创建、使用、发现和部署 Web 服务。在 Visual Studio 2005 中,Microsoft 对 Web 服务的持续承诺将通过对 Web 服务增强 (WSE) 库中实现的最新行业标准的支持得到证实。对 WSE 的更新将为创建业务关键的 Web 服务(服务涉及多个信任域、长期运行的操作和对等通信)提供便利。
此外,随着 WSE 的应用日趋广泛,以及高级 Web 服务开发行业规范的不断成熟,WSE 库将被集成到 .NET Framework 中。将来版本的 WSE 将包含这些规范的最新版本,并且将包含策略框架、增强的安全模型和 SOAP 消息处理基础结构。此外,WSE 将支持 IIS 外部的承载(作为可执行文件或 Windows 服务),并且将支持 HTTP 和 TCP 通信。
Microsoft Office 解决方案开发
2003 年 10 月,Microsoft 发布了 Visual Studio Tools for Microsoft Office System。这一新技术使开发人员能够编写响应 Word 和 Excel 自动化模型中事件的托管代码,从而为 Word 2003 和 Excel 2003 解决方案带来基于 .NET Framework 的开发方法。以长期以来 Visual Basic for applications (VBA) 和基于 COM 自动化的成功为基础,Visual Studio Tools for Office (VSTO) 为开发人员提供与生成 Office 解决方案有关的重大好处,包括熟悉的编码体验、改进的解决方案部署和维护以及改进的安全性。
VSTO 2005 版为基于 Microsoft Office Excel 2003 和 Microsoft Office Word 2003 的业务解决方案的开发提供重大的增强。根据该版本 VSTO 提供的基础,Visual Studio 2005 Tool for Office 将解决 Office 解决方案开发人员目前面临的一些最大的难题,包括数据和视图元素的分隔、Office 解决方案程序集的部署、服务器端和脱机方案以及与 Visual Studio 工具集的无缝集成。
VSTO 2005 的主要目标之一是在 Office 文档中分隔“数据”和“视图”,以便简化基于 Office 的解决方案的创建。目前,Excel 电子表格和 Word 文档,由单元格值/文本(表示数据)以及字体等与数据有关的描述性信息(表示视图)组成。因为 Word 和 Excel 不具有内置的编程数据概念,所以开发人员将受到文档中存储的数据有效开发解决方案的能力的制约。
VSTO 2005 将通过使数据能够作为 XML 数据岛嵌入来在 Office 文档中分隔数据和视图。这提供了一种开发人员在编程时可依靠的,易于理解且易于解决的结构。开发人员能够分隔视图和数据,因而能够直接更新数据,而无需考虑视图代码的编写。类型化数据集用来于提供面向架构的编程模型,该编程模型用于与数据岛进行交互以确保编写对托管代码的智能感知支持。将在数据岛和视图之间使用数据绑定,以使这两个实体保持同步。开发人员还能向数据添加独立于文档视图组件的验证代码。
借助于基于 XML 架构的模型直接对数据进行编程,开发人员可以显著提高工作效率。处