使用 ADO.NET 提供的通用接口,您可以编写一组在使用任何 .NET 数据提供程序时都将运行的代码。

当编写将用于多个 .NET 数据提供程序的代码时,请特别注意所使用的任何提供程序特定的语法。例如,根据您所访问的数据源,SQL 语法将有所不同。当更改为一个不同的 .NET 数据提供程序时,如果将 SQL 命令隔离为字符串常数,则将使代码更易于维护。

另外,务必要保持在代码中创建参数的顺序。对于 SQL Server .NET 数据提供程序,参数使用名称来标识,因此参数顺序并不重要。但是,OLE DB .NET 数据提供程序会按照参数添加到参数集合中的顺序来分配参数值。因此,最好始终保持参数在代码中的顺序。

以下示例代码将与 SQL Server .NET 数据提供程序或 OLE DB .NET 数据提供程序一起运行。

// You can use either:
//  IDbConnection myConn = new SqlConnection();
// or:
//  IDbConnection myConn = new OleDbConnection();

IDbCommand myCommand = myConn.CreateCommand();
myCommand.CommandText = "SELECT * FROM Customers";
IDataReader myReader = myCommand.ExecuteReader();

while (myReader.Read())
  Console.WriteLine("{0}\t{1}", myReader.GetString(0), myReader.GetString(1));