Querying with the DataReader
The CData ADO.NET Provider for Greenhouse implements two ADO.NET interfaces you can use to retrieve data from Greenhouse: GreenhouseDataAdapter and GreenhouseDataReader objects. Whereas GreenhouseDataAdapter objects retrieve a single result set of all the data that matches a query, GreenhouseDataReader objects fetch data in subset increments as needed.
Using the GreenhouseDataReader
The GreenhouseDataReader retrieves data faster than the GreenhouseDataAdapter because it can retrieve data in pages. As you read data from the GreenhouseDataReader, 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 Applications table:
C#
string connectionString = "APIKey=YourAPIKey;"; using (GreenhouseConnection connection = new GreenhouseConnection(connectionString)) { GreenhouseCommand cmd = new GreenhouseCommand("SELECT * FROM Applications", connection); GreenhouseDataReader rdr = cmd.ExecuteReader(); while (rdr.Read()) { Console.WriteLine(String.Format("\t{0} --> \t\t{1}", rdr["Id"], rdr["CandidateId"])); } }
VB.NET
Dim connectionString As String = "APIKey=YourAPIKey;" Using connection As New GreenhouseConnection(connectionString) Dim cmd As New GreenhouseCommand("SELECT * FROM Applications", connection) Dim rdr As GreenhouseDataReader = cmd.ExecuteReader() While rdr.Read() Console.WriteLine([String].Format(vbTab & "{0} --> " & vbTab & vbTab & "{1}", rdr("Id"), rdr("CandidateId"))) End While End Using