dotConnect for Salesforce Documentation
Devart.Data.Salesforce Namespace / SalesforceDataAdapter Class
Members Example

In This Topic
    SalesforceDataAdapter Class
    In This Topic
    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.
    Syntax
    Remarks
    The SalesforceDataAdapter serves as a bridge between a System.Data.DataSet and a data source for retrieving and saving data. The SalesforceDataAdapter provides this bridge by using System.Data.Common.DbDataAdapter.Fill to load data from the data source into the System.Data.DataSet, and using System.Data.DataSet.Update() to send changes made in the System.Data.DataSet back to the data source.

    SalesforceDataAdapter is used in conjunction with SalesforceConnection and SalesforceCommand to increase performance when connecting to Salesforce.com or Database.com.

    The SalesforceDataAdapter also includes the SelectCommand, InsertCommand, DeleteCommand, UpdateCommand, and TableMappings properties to facilitate loading and updating of data.

    Example
    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
    Inheritance Hierarchy

    System.Object
       System.MarshalByRefObject
          System.ComponentModel.Component
             System.Data.Common.DataAdapter
                System.Data.Common.DbDataAdapter
                   Devart.Common.DbDataAdapter
                      Devart.Data.Salesforce.SalesforceDataAdapter

    Requirements

    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

    See Also