SalesforceDataAdapter Class
Represents a set of data commands and a data source connection that are used to fill the
System.Data.DataSet and update Salesforce.com or Database.com data.
The following example demonstrates how to retrieve and manipulate data using
SalesforceDataAdapter.
public void UseDataAdapter(SalesforceConnection salesforceConnection)
{
SalesforceDataAdapter myAdapter = new SalesforceDataAdapter("SELECT Name FROM Account", salesforceConnection);
myAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
DataSet myDataSet = new DataSet();
myAdapter.Fill(myDataSet,"Accounts");
object[] rowVals = new object[2];
rowVals[0] = "New account";
myDataSet.Tables["Accounts"].Rows.Add(rowVals);
myAdapter.InsertCommand = new SalesforceCommand("INSERT INTO Account (Name) " +
"VALUES ( :Name)", salesforceConnection);
myAdapter.InsertCommand.Parameters.Add("Name", SalesforceType.String, 255, "Name");
myAdapter.Update(myDataSet,"Account");
//Get all data from all tables within the dataset
foreach(DataTable myTable in myDataSet.Tables)
{
foreach(DataRow myRow in myTable.Rows)
{
foreach (DataColumn myColumn in myTable.Columns)
{
Console.Write(myRow[myColumn]+"\t");
}
Console.WriteLine();
}
Console.WriteLine();
}
}
Public Sub UseDataAdapter(salesforceConnection As SalesforceConnection)
Dim myAdapter As New SalesforceDataAdapter("SELECT Name FROM Account", salesforceConnection)
myAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
Dim myDataSet As New DataSet()
myAdapter.Fill(myDataSet, "Accounts")
Dim rowVals As Object() = New Object(1) {}
rowVals(0) = "New account"
myDataSet.Tables("Accounts").Rows.Add(rowVals)
myAdapter.InsertCommand = New SalesforceCommand("INSERT INTO Account (Name) " _
& "VALUES ( :Name)", salesforceConnection)
myAdapter.InsertCommand.Parameters.Add("Name", SalesforceType.String, 255, "Name")
myAdapter.Update(myDataSet, "Account")
'Get all data from all tables within the dataset
For Each myTable As DataTable In myDataSet.Tables
For Each myRow As DataRow In myTable.Rows
For Each myColumn As DataColumn In myTable.Columns
Console.Write(myRow(myColumn) + vbTab)
Next
Console.WriteLine()
Next
Console.WriteLine()
Next
End Sub
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2