ApplyChanges 方法 (SyncGroupMetadata, DataSet, SyncSession)
當給定群組中繼資料、資料集和同步處理工作階段參數時,將同步處理群組的插入、更新和刪除套用到用戶端資料庫。
命名空間: Microsoft.Synchronization.Data.SqlServerCe
組件: Microsoft.Synchronization.Data.SqlServerCe (在 Microsoft.Synchronization.Data.SqlServerCe.dll 中)
語法
'宣告
Public Overrides Function ApplyChanges ( _
groupMetadata As SyncGroupMetadata, _
dataSet As DataSet, _
syncSession As SyncSession _
) As SyncContext
'用途
Dim instance As SqlCeClientSyncProvider
Dim groupMetadata As SyncGroupMetadata
Dim dataSet As DataSet
Dim syncSession As SyncSession
Dim returnValue As SyncContext
returnValue = instance.ApplyChanges(groupMetadata, _
dataSet, syncSession)
public override SyncContext ApplyChanges(
SyncGroupMetadata groupMetadata,
DataSet dataSet,
SyncSession syncSession
)
public:
virtual SyncContext^ ApplyChanges(
SyncGroupMetadata^ groupMetadata,
DataSet^ dataSet,
SyncSession^ syncSession
) override
abstract ApplyChanges :
groupMetadata:SyncGroupMetadata *
dataSet:DataSet *
syncSession:SyncSession -> SyncContext
override ApplyChanges :
groupMetadata:SyncGroupMetadata *
dataSet:DataSet *
syncSession:SyncSession -> SyncContext
public override function ApplyChanges(
groupMetadata : SyncGroupMetadata,
dataSet : DataSet,
syncSession : SyncSession
) : SyncContext
參數
- groupMetadata
型別:Microsoft.Synchronization.Data. . :: . .SyncGroupMetadata
包含有關同步處理群組之中繼資料的 SyncGroupMetadata 物件。
- dataSet
型別:System.Data. . :: . .DataSet
包含要套用到用戶端資料庫之資料列的 DataSet 物件。
- syncSession
型別:Microsoft.Synchronization.Data. . :: . .SyncSession
包含有關目前同步處理工作階段之中繼資料的 SyncSession 物件。
傳回值
型別:Microsoft.Synchronization.Data. . :: . .SyncContext
包含同步處理工作階段之資料變更和錨定值及其他中繼資料的 SyncContext 物件。
例外
例外狀況 | 條件 |
---|---|
ArgumentNullException | groupMetadata 或 dataSet 是 null Nothing nullptr unit null 參考 (在 Visual Basic 中為 Nothing) 。 |
DataSyncException | 另一個交易正在進行中。 |
備註
這個方法假設此資料表位於用戶端資料庫中,否則此方法會擲回例外狀況。如果此資料表存在但是未啟用追蹤,則會啟用雙向追蹤。資料列會標記 DataRowState 值,以便區分插入、更新和刪除。
變更會按照刪除、插入和更新的先後順序套用。變更套用到同步處理群組內每一個資料表的順序,取決於資料表加入至群組的順序。刪除的套用順序與資料表的加入順序相反。插入和更新的套用順序與資料表的加入順序相同。
例如,如果您先後將資料表 SalesOrderHeader 和 SalesOrderDetail 加入至相同的同步處理群組,則會在同步處理期間使用下列處理順序:
刪除會套用至 SalesOrderDetail,然後套用至 SalesOrderHeader。
插入會套用至 SalesOrderHeader,然後套用至 SalesOrderDetail。
更新會套用至 SalesOrderHeader,然後套用至 SalesOrderDetail。