SqlSyncAdapterBuilder Class
Creates a SyncAdapter and the SQL commands that are required to synchronize a client with a SQL Server database.
Inheritance Hierarchy
System.Object
System.MarshalByRefObject
System.ComponentModel.Component
Microsoft.Synchronization.Data.Server.SqlSyncAdapterBuilder
Namespace: Microsoft.Synchronization.Data.Server
Assembly: Microsoft.Synchronization.Data.Server (in Microsoft.Synchronization.Data.Server.dll)
Syntax
'Declaration
Public Class SqlSyncAdapterBuilder _
Inherits Component
'Usage
Dim instance As SqlSyncAdapterBuilder
public class SqlSyncAdapterBuilder : Component
public ref class SqlSyncAdapterBuilder : public Component
type SqlSyncAdapterBuilder =
class
inherit Component
end
public class SqlSyncAdapterBuilder extends Component
The SqlSyncAdapterBuilder type exposes the following members.
Constructors
Name | Description | |
---|---|---|
SqlSyncAdapterBuilder() | Initializes a new instance of the SqlSyncAdapterBuilder class by using default values. | |
SqlSyncAdapterBuilder(SqlConnection) | Initializes a new instance of the SqlSyncAdapterBuilder class by using a connection parameter. |
Top
Properties
Name | Description | |
---|---|---|
CanRaiseEvents | (Inherited from Component.) | |
ChangeTrackingType | Specifies whether the server database uses the change tracking feature in SQL Server or a custom coupled change tracking system, with a default of CoupledChangeTracking. | |
Connection | Gets or sets the connection to the server database. | |
Container | (Inherited from Component.) | |
CreationOriginatorIdColumn | Gets or sets the column in the base table that is used to track who inserts a row. | |
CreationTrackingColumn | Gets or sets the column in the base table that is used to track when a row is inserted. | |
DataColumns | Gets a collection of data columns to be synchronized. This enables you to synchronize a subset of the columns in the table. | |
DeletionOriginatorIdColumn | Gets or sets the column in the tombstone table that is used to track who deletes a row. | |
DeletionTrackingColumn | Gets or sets the column in the tombstone table that is used to track when a row is deleted. | |
DesignMode | (Inherited from Component.) | |
Events | (Inherited from Component.) | |
FilterClause | Specifies the SQL WHERE clause (without the WHERE keyword) that is used to filter the result set from the base table. | |
FilterParameters | Gets a collection of filter parameters that are used in the FilterClause. | |
QuotePrefix | Specifies the left delimiter (such as a left square bracket) that is used for database object names, such as tables and columns. | |
QuoteSuffix | Specifies the right delimiter (such as a right square bracket) that is used for database object names, such as tables and columns. | |
RowGuidColumn | Gets or sets a column of uniqueidentifier data type that is used to identify rows in the base table and the tombstone table. | |
Site | (Inherited from Component.) | |
SyncDirection | Specifies the direction of synchronization from the perspective of the client, with a default direction of Bidirectional. | |
TableName | Gets or sets the name of the base table for which to create a SyncAdapter object. | |
TombstoneDataColumns | Gets a collection of data columns to be synchronized. This enables you to synchronize a subset of the columns in the table. | |
TombstoneFilterClause | Specifies the SQL WHERE clause (without the WHERE keyword) that is used to filter the result set from the tombstone table. | |
TombstoneFilterParameters | Gets a collection of filter parameters that are used in the TombstoneFilterClause. | |
TombstoneTableName | Gets or sets the name of the tombstone table that is used to synchronize deletes. | |
UpdateOriginatorIdColumn | Gets or sets the column in the base table that is used to track who updates a row. | |
UpdateTrackingColumn | Gets or sets the column in the base table that is used to track when a row is updated. |
Top
Methods
Name | Description | |
---|---|---|
CreateObjRef | (Inherited from MarshalByRefObject.) | |
Dispose() | (Inherited from Component.) | |
Dispose(Boolean) | (Inherited from Component.) | |
Equals | (Inherited from Object.) | |
Finalize | (Inherited from Component.) | |
GetHashCode | (Inherited from Object.) | |
GetLifetimeService | (Inherited from MarshalByRefObject.) | |
GetService | (Inherited from Component.) | |
GetType | (Inherited from Object.) | |
InitializeLifetimeService | (Inherited from MarshalByRefObject.) | |
MemberwiseClone() | (Inherited from Object.) | |
MemberwiseClone(Boolean) | (Inherited from MarshalByRefObject.) | |
ToString | (Inherited from Component.) | |
ToSyncAdapter() | Creates a synchronization adapter for the table specified in TableName. | |
ToSyncAdapter(Boolean, Boolean, Boolean, Boolean) | Creates a synchronization adapter for the table specified in TableName, with the option of not downloading tracking columns to the client. |
Top
Events
Name | Description | |
---|---|---|
Disposed | (Inherited from Component.) |
Top
Remarks
The synchronization adapter builder is modeled after the command builder in ADO.NET. You can use this tool to develop code for the synchronization commands that are executed by the server synchronization provider. The synchronization adapter builder produces SELECT, INSERT, UPDATE, and DELETE statements for SQL Server databases based on information that you provide about the tables that are involved in synchronization. The synchronization adapter builder enables you to specify the following information:
The tables that you want to synchronize
The tracking columns in those tables
The direction of synchronization
Which rows and columns to include
The synchronization adapter builder uses this information to create a synchronization adapter and Transact-SQL commands. The synchronization adapter builder is compatible with SQL Server 2000 and later versions.
Note
You can use the synchronization adapter builder to become familiar with synchronization commands. However, if you can, we recommend that you manually specify commands that use stored procedures. Stored procedures can help improve the performance and security of the application.
Examples
The following code example creates a SyncAdapter object for the Customer table by using the SqlSyncAdapterBuilder. Columns in the table are specified for several properties, and synchronization is specified as bidirectional. To view this code in the context of a complete example, see How to: Work with Events and Program Business Logic.
SqlSyncAdapterBuilder customerBuilder = new SqlSyncAdapterBuilder(serverConn);
customerBuilder.TableName = "Sales.Customer";
customerBuilder.TombstoneTableName = customerBuilder.TableName + "_Tombstone";
customerBuilder.SyncDirection = SyncDirection.Bidirectional;
customerBuilder.CreationTrackingColumn = "InsertTimestamp";
customerBuilder.UpdateTrackingColumn = "UpdateTimestamp";
customerBuilder.DeletionTrackingColumn = "DeleteTimestamp";
customerBuilder.CreationOriginatorIdColumn = "InsertId";
customerBuilder.UpdateOriginatorIdColumn = "UpdateId";
customerBuilder.DeletionOriginatorIdColumn = "DeleteId";
SyncAdapter customerSyncAdapter = customerBuilder.ToSyncAdapter();
customerSyncAdapter.TableName = "Customer";
this.SyncAdapters.Add(customerSyncAdapter);
Dim customerBuilder As New SqlSyncAdapterBuilder(serverConn)
With customerBuilder
.TableName = "Sales.Customer"
.TombstoneTableName = customerBuilder.TableName + "_Tombstone"
.SyncDirection = SyncDirection.Bidirectional
.CreationTrackingColumn = "InsertTimestamp"
.UpdateTrackingColumn = "UpdateTimestamp"
.DeletionTrackingColumn = "DeleteTimestamp"
.CreationOriginatorIdColumn = "InsertId"
.UpdateOriginatorIdColumn = "UpdateId"
.DeletionOriginatorIdColumn = "DeleteId"
End With
Dim customerSyncAdapter As SyncAdapter = customerBuilder.ToSyncAdapter()
customerSyncAdapter.TableName = "Customer"
Me.SyncAdapters.Add(customerSyncAdapter)
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.