Querying with the DataReader
The CData ADO.NET Provider for Shopify implements two ADO.NET interfaces you can use to retrieve data from Shopify: ShopifyDataAdapter and ShopifyDataReader objects. Whereas ShopifyDataAdapter objects retrieve a single result set of all the data that matches a query, ShopifyDataReader objects fetch data in subset increments as needed.
Using the ShopifyDataReader
The ShopifyDataReader retrieves data faster than the ShopifyDataAdapter because it can retrieve data in pages. As you read data from the ShopifyDataReader, 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 Customers table:
C#
string connectionString = "InitiateOAuth=GETANDREFRESH;ShopUrl=https://yourshopname.myshopify.com;OAuthClientId=myoauthclientid;OAuthClientSecret=myoauthclientsecret;"; using (ShopifyConnection connection = new ShopifyConnection(connectionString)) { ShopifyCommand cmd = new ShopifyCommand("SELECT * FROM Customers", connection); ShopifyDataReader rdr = cmd.ExecuteReader(); while (rdr.Read()) { Console.WriteLine(String.Format("\t{0} --> \t\t{1}", rdr["FirstName"], rdr["Id"])); } }
VB.NET
Dim connectionString As String = "InitiateOAuth=GETANDREFRESH;ShopUrl=https://yourshopname.myshopify.com;OAuthClientId=myoauthclientid;OAuthClientSecret=myoauthclientsecret;" Using connection As New ShopifyConnection(connectionString) Dim cmd As New ShopifyCommand("SELECT * FROM Customers", connection) Dim rdr As ShopifyDataReader = cmd.ExecuteReader() While rdr.Read() Console.WriteLine([String].Format(vbTab & "{0} --> " & vbTab & vbTab & "{1}", rdr("FirstName"), rdr("Id"))) End While End Using