Querying with the DataReader
The CData ADO.NET Provider for Azure Analysis Services implements two ADO.NET interfaces you can use to retrieve data from Azure Analysis Services: AASDataAdapter and AASDataReader objects. Whereas AASDataAdapter objects retrieve a single result set of all the data that matches a query, AASDataReader objects fetch data in subset increments as needed.
Using the AASDataReader
The AASDataReader retrieves data faster than the AASDataAdapter because it can retrieve data in pages. As you read data from the AASDataReader, 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 [adventureworks].[Model].Customer table:
C#
string connectionString = "URL=asazure://southcentralus.asazure.windows.net/server;"; using (AASConnection connection = new AASConnection(connectionString)) { AASCommand cmd = new AASCommand("SELECT Country, Education FROM [adventureworks].[Model].Customer", connection); AASDataReader rdr = cmd.ExecuteReader(); while (rdr.Read()) { Console.WriteLine(String.Format("\t{0} --> \t\t{1}", rdr["Country"], rdr["Education"])); } }
VB.NET
Dim connectionString As String = "URL=asazure://southcentralus.asazure.windows.net/server;" Using connection As New AASConnection(connectionString) Dim cmd As New AASCommand("SELECT Country, Education FROM [adventureworks].[Model].Customer", connection) Dim rdr As AASDataReader = cmd.ExecuteReader() While rdr.Read() Console.WriteLine([String].Format(vbTab & "{0} --> " & vbTab & vbTab & "{1}", rdr("Country"), rdr("Education"))) End While End Using