Querying with the DataReader
The CData ADO.NET Provider for SugarCRM implements two ADO.NET interfaces you can use to retrieve data from SugarCRM: SugarCRMDataAdapter and SugarCRMDataReader objects. Whereas SugarCRMDataAdapter objects retrieve a single result set of all the data that matches a query, SugarCRMDataReader objects fetch data in subset increments as needed.
Using the SugarCRMDataReader
The SugarCRMDataReader retrieves data faster than the SugarCRMDataAdapter because it can retrieve data in pages. As you read data from the SugarCRMDataReader, 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 Accounts table:
C#
string connectionString = "InitiateOAuth=GETANDREFRESH;URL=http://mySugarCRM.com;User=myUser;Password=myPassword;"; using (SugarCRMConnection connection = new SugarCRMConnection(connectionString)) { SugarCRMCommand cmd = new SugarCRMCommand("SELECT * FROM Accounts", connection); SugarCRMDataReader rdr = cmd.ExecuteReader(); while (rdr.Read()) { Console.WriteLine(String.Format("\t{0} --> \t\t{1}", rdr["Name"], rdr["Industry"])); } }
VB.NET
Dim connectionString As String = "InitiateOAuth=GETANDREFRESH;URL=http://mySugarCRM.com;User=myUser;Password=myPassword;" Using connection As New SugarCRMConnection(connectionString) Dim cmd As New SugarCRMCommand("SELECT * FROM Accounts", connection) Dim rdr As SugarCRMDataReader = cmd.ExecuteReader() While rdr.Read() Console.WriteLine([String].Format(vbTab & "{0} --> " & vbTab & vbTab & "{1}", rdr("Name"), rdr("Industry"))) End While End Using