DbSyncAdapter 類別
表示用來在本機對等 (Peer) 資料庫上擷取和套用資料與中繼資料 (Metadata) 的一組命令。
命名空間: Microsoft.Synchronization.Data
組件: Microsoft.Synchronization.Data (在 Microsoft.Synchronization.Data.dll 中)
語法
'宣告
Public Class DbSyncAdapter
'用途
Dim instance As DbSyncAdapter
public class DbSyncAdapter
public ref class DbSyncAdapter
type DbSyncAdapter = class end
public class DbSyncAdapter
備註
DbSyncAdapter 是做為 DbSyncProvider 與對等資料庫之間的橋樑。同步處理配接器是以 ADO.NET 中的資料配接器為模型,針對每個同步處理的資料表而定義。同步處理配接器會將特定的命令提供給對等同步處理提供者,提供者必須要有這些命令才能與對等資料庫互動,例如 InsertCommand,它會從一個對等資料庫套用插入至另一個對等資料庫。因為同步處理配接器使用 ADO.NETDbCommand 物件,因此您可以使用 ADO.NET 支援的任何命令結構。包含內嵌 Transact-SQL、預存程序 (Stored Procedure)、檢視、函式等等。命令只需要單一結果,此結果會定義要進行傳輸和套用的結構與資料。
範例
下列程式碼範例會建立 Customer 資料表的 SyncAdapter 物件、指定要用來識別資料表中每個資料列的 CustomerId 資料行,並為 SelectIncrementalChangesCommand 屬性指定命令。所呼叫的預存程序是在資料庫提供者的安裝指令碼 HOW-TO 主題 中定義。如需配接器命令以及在完整範例內容中檢視此程式碼的詳細資訊,請參閱 HOW TO:佈建伺服器資料庫來進行共同作業同步處理 (非 SQL Server)。
DbSyncAdapter adapterCustomer = new DbSyncAdapter("Customer");
//Specify the primary key, which Sync Framework uses
//to identify each row during synchronization.
adapterCustomer.RowIdColumns.Add("CustomerId");
SqlCommand chgsCustomerCmd = new SqlCommand();
chgsCustomerCmd.CommandType = CommandType.StoredProcedure;
chgsCustomerCmd.CommandText = "Sync.sp_Customer_SelectChanges";
chgsCustomerCmd.Parameters.Add("@" + DbSyncSession.SyncMetadataOnly, SqlDbType.Int);
chgsCustomerCmd.Parameters.Add("@" + DbSyncSession.SyncMinTimestamp, SqlDbType.BigInt);
chgsCustomerCmd.Parameters.Add("@" + DbSyncSession.SyncScopeLocalId, SqlDbType.Int);
chgsCustomerCmd.Parameters.Add("@" + DbSyncSession.SyncInitialize, SqlDbType.Int);
adapterCustomer.SelectIncrementalChangesCommand = chgsCustomerCmd;
Dim adapterCustomer As New DbSyncAdapter("Customer")
'Specify the primary key, which Sync Framework uses
'to identify each row during synchronization.
adapterCustomer.RowIdColumns.Add("CustomerId")
Dim chgsCustomerCmd As New SqlCommand()
With chgsCustomerCmd
.CommandType = CommandType.StoredProcedure
.CommandText = "Sync.sp_Customer_SelectChanges"
.Parameters.Add("@" + DbSyncSession.SyncMetadataOnly, SqlDbType.Int)
.Parameters.Add("@" + DbSyncSession.SyncMinTimestamp, SqlDbType.BigInt)
.Parameters.Add("@" + DbSyncSession.SyncScopeLocalId, SqlDbType.Int)
.Parameters.Add("@" + DbSyncSession.SyncInitialize, SqlDbType.Int)
End With
adapterCustomer.SelectIncrementalChangesCommand = chgsCustomerCmd
繼承階層
System. . :: . .Object
Microsoft.Synchronization.Data..::..DbSyncAdapter
執行緒安全性
這個類型的任何公用static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。不保證任何執行個體成員都可以是安全執行緒。