.NET Framework 开发人员指南
ADO.NET 中的新增功能

ADO.NET 2.0 版中新增了下列功能。

托管提供程序

服务器枚举

  • 支持枚举 Microsoft SQL Server 2000 以及更高版本的活动实例。有关更多信息,请参见枚举 SQL Server 的实例

异步处理

  • 使您可以使用 API 执行异步数据库操作,该 API 在 .NET Framework 所使用的异步模型之后建模。有关更多信息,请参见执行异步操作

多个活动结果集 (MARS)

批量复制操作

  • 支持使用 SQL Server .NET 数据提供程序执行快速的批量插入。有关更多信息,请参见执行批量复制操作

新的 SQL Server Max 数据类型

  • 在 SQL Server 2005 中支持 varchar(max)、nvarchar(max)、varbinary(max) 数据类型。有关更多信息,请参见使用大值类型

SQL Server 用户定义类型

SQL Server 通知

  • 允许 .NET Framework 应用程序向 SQL Server 发送命令,如果执行相同命令生成的结果集与最初检索到的结果集不同,请求生成通知。有关更多信息,请参见使用查询通知

SQL Server 快照隔离的事务

  • 支持快照隔离,该 SQL Server 2005 机制旨在减少 OLTP 应用程序中的阻碍。有关更多信息,请参见使用快照隔离

SQL Server 2005 中的数据库镜像

  • 在 SQL Server 2005 中通过新的连接字符串语法支持数据库镜像,该语法指定故障转移合作伙伴服务器。有关更多信息,请参见使用数据库镜像

提供统计信息

  • 在 SQL Server 2005 中支持检索运行库统计信息。目前,SQL Server .NET 提供程序提供了 21 种不同的计数器。有关更多信息,请参见使用提供程序统计信息

在 SQL Server 2005 中更改密码

  • 允许 .NET Framework 应用程序更改用户帐户的密码,不需要管理员参与。有关更多信息,请参见 ChangePassword

批处理

跟踪

部分信任

连接池控制

SQL Server XML 数据类型支持

  • SQL Server 2005 支持新的 XML 数据类型,System.Data.SqlClient 在客户端上为该数据类型提供强大的支持。XML 值使用 System.Xml 框架公开,以便与 .NET 编程模型无缝地集成。

SQL Server 2005 与 System.Transactions 的集成以及可提升的事务优化

  • .NET 2.0 具有一个新的事务框架,可以通过 System.Transactions 命名空间访问。将用于分布式事务管理的 System.Transactions、用于数据库访问的 System.Data.SqlClient 和作为后端的 SQL Server 2005 组合使用时,可以优化分布式事务,使“分布式”的额外成本只有在真正需要事务时才会产生。

断开类

DataSet 增强

DataSet 增强

  • 新的索引引擎提高对 DataTable 和 DataRow 对象的插入、删除和修改操作的性能。索引或主键必须在基表中定义。

DataSet 的二进制序列化

  • 在通过远程处理进行二进制传输时,这个新选项使 DataSet 和 DataTable 可以使用二进制格式进行序列化。在使用远程处理连接到不同层的应用程序中使用 DataSet/DataTable 对象时,大多数情况下,这样可以大大提高性能,并明显减少内存和 CPU 的使用。

DataTable 作为独立对象

  • 以前的版本中许多只能在 DataSet 中使用的方法现在也可以在 DataTable 中使用(例如 ReadXml 和 WriteXml)。此外,DataTable 可以自行进行序列化,所以,包含单个表的 DataSet 不必只是通过 Web 服务或任何其他要求序列化的机制来公开表。

从 DataView 创建 DataTable

  • 现在,可以从 DataView 创建 DataTable。新的 DataTable 将与当前的 DataView 包含相同的行集。新的 DataTable 的列可以是 DataView 列的子集。行可以是所有行,也可以是个别行。有关更多信息,请参见 ToTable

架构推断引擎增强

  • 架构推断引擎得到了增强,如果有足够的信息,可以推断类型;速度也明显提高。

命名空间限定的表

  • 现在,DataSet 可以支持具有相同 TableName 但是具有不同 Namespace 的表,提供了避免命名冲突的机制。

新的 DataTable 加载功能

  • DataTables 和 DataSets 新的 Load 方法可以直接将 DataReader 流处理到 DataTable 中。Load 方法还提供了新的加载行为选项,扩展了可以通过 DataAdapter 使用的功能。

行状态控制

  • 新的 SetAddedSetModified 方法允许应用程序显式操作 DataSet 和 DataTable 行的行状态。

增强了对自定义的用户定义类型的支持

  • DataTable 为自定义的用户定义类型提供更多的支持。XML 序列化已扩展为支持多态性。例如,Person 列可以存储 Employee 实例,该实例序列化为 XML 以及从 XML 反序列化,同时不会损失任何类型的保真度。此外,现在用户可以实现新的更改跟踪接口,使 DataTable 可以跟踪此类对象的更改。

XML/XSD 增强

  • 增加了在 XSD 中读写简单类型的支持。增加了读写要流处理的多个架构的支持。增加了读写 XSD/XML 的支持,条件是单个表或 XML 元素嵌套在两个或两个以上的父表中。

DataRow 增强

  • 新的 IndexOf 可以用于查找行在 DataTable.Rows 集合中的位置。

更改列在 DataTable 中的位置

  • 新的 SetOrdinal 方法使用户可以更改列在 DataTable 中的位置。

DataView 性能增强

  • ADO.NET 2.0 中的 DataView 使用新的更新算法,大大改进了 DataView 的维护。

DataColumn 表达式

  • DataColumn 中的表达式可以包括同一个 DataTable 中的多个列。表达式可以更新,列值得到维护。

类型化 DataSet 的架构序列化

  • 类型化 DataSets 可以通过将 SchemaSerializationMode 枚举设置为 ExcludeSchema,使架构组件跳过序列化。

与提供程序无关的 API

.NET 数据提供程序枚举

与提供程序无关的 API

架构发现

  • 架构发现使应用程序可以请求托管提供程序查找并返回与特定数据库的数据库架构有关的信息,给定连接连接到该数据库。不同的数据库架构元素(例如表、列和存储过程)通过每个提供程序的 Connection 类的 GetSchema 方法进行公开。有关更多信息,请参见从数据库中获取架构信息

请参见

其他资源

ADO.NET

标记 : ? kkkkk


Page view tracker