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。