Querying with the DataReader
The CData ADO.NET Provider for Authorize.net implements two ADO.NET interfaces you can use to retrieve data from Authorize.net: AuthorizeNetDataAdapter and AuthorizeNetDataReader objects. Whereas AuthorizeNetDataAdapter objects retrieve a single result set of all the data that matches a query, AuthorizeNetDataReader objects fetch data in subset increments as needed.
Using the AuthorizeNetDataReader
The AuthorizeNetDataReader retrieves data faster than the AuthorizeNetDataAdapter because it can retrieve data in pages. As you read data from the AuthorizeNetDataReader, it periodically requests the next page of results from the data source, if required. This causes results to be returned at a faster rate. The following example selects all the columns from the SettledBatchList table:
C#
string connectionString = "LoginID=myLoginID;TransactionKey=myTransactionKey"; using (AuthorizeNetConnection connection = new AuthorizeNetConnection(connectionString)) { AuthorizeNetCommand cmd = new AuthorizeNetCommand("SELECT * FROM SettledBatchList", connection); AuthorizeNetDataReader rdr = cmd.ExecuteReader(); while (rdr.Read()) { Console.WriteLine(String.Format("\t{0} --> \t\t{1}", rdr["TotalCharge"], rdr["Product"])); } }
VB.NET
Dim connectionString As String = "LoginID=myLoginID;TransactionKey=myTransactionKey" Using connection As New AuthorizeNetConnection(connectionString) Dim cmd As New AuthorizeNetCommand("SELECT * FROM SettledBatchList", connection) Dim rdr As AuthorizeNetDataReader = cmd.ExecuteReader() While rdr.Read() Console.WriteLine([String].Format(vbTab & "{0} --> " & vbTab & vbTab & "{1}", rdr("TotalCharge"), rdr("Product"))) End While End Using