C# で、OleDbDataReader を DbDataReader に変換する

C#でOleDbDataReaderをDbDataReaderに変換するには、DbProviderFactoryクラスのCreateCommandやCreateDataAdapterメソッドを利用します。サンプルコードを以下に示します。

using System.Data.Common;
using System.Data.OleDb;
// 创建OleDbDataReader
OleDbConnection oledbConnection = new OleDbConnection(connectionString);
OleDbCommand oledbCommand = new OleDbCommand(query, oledbConnection);
OleDbDataReader oledbDataReader = oledbCommand.ExecuteReader();
// 转换为DbDataReader
DbProviderFactory factory = DbProviderFactories.GetFactory(oledbConnection);
DbCommand dbCommand = factory.CreateCommand();
dbCommand.Connection = oledbConnection;
dbCommand.CommandText = query;
DbDataReader dbDataReader = dbCommand.ExecuteReader();

上記のコードでは、OleDbDataReaderオブジェクトを作成し、DbProviderFactoryクラスのCreateCommandメソッドでDbCommandオブジェクトを作成してConnectionとCommandTextプロパティを設定した後、DbCommandのExecuteReaderメソッドでDbDataReaderオブジェクトを取得して、OleDbDataReaderをDbDataReaderに変換しています。

bannerAds