MemberChangeConflict.Resolve 方法 (Object)

通过将客户端值 (即,前端 Web 服务器上的当前进程中的值) 的字段 (或属性) 的设置为指定的对象解析差异。

命名空间:  Microsoft.SharePoint.Linq
程序集:  Microsoft.SharePoint.Linq(位于 Microsoft.SharePoint.Linq.dll 中)

语法

声明
Public Sub Resolve ( _
    value As Object _
)
用法
Dim instance As MemberChangeConflict
Dim value As Object

instance.Resolve(value)
public void Resolve(
    Object value
)

参数

  • value
    类型:System.Object

    设置的值的字段 (或属性) 应进行。

备注

通常情况下,如果您希望客户端值为CurrentValueOriginalValueDatabaseValue,则调用另一个重载的Resolve(RefreshMode) ,并将其传递相应的RefreshMode值。此重载可用于将客户端值设置为某些第四个对象。

直到再次调用SubmitChanges时,由该方法所做的更改不保持到数据库。

示例

下面的代码演示如何使用Resolve(Object)来指示它有争议的字段分配一个值。如果MemberChangeConflict对象表示实际的并发冲突 ; 只有进行此工作分配即另一个用户已更改字段中,由于该客户端进程最后它从数据库中检索内容。

catch (ChangeConflictException e) 
{
    foreach (ObjectChangeConflict changedListItem in teamSite.ChangeConflicts)
    {
        foreach (MemberChangeConflict changedField in changedListItem.MemberConflicts)
        {
            if (changedField.Member.OriginalValue != changedField.Member.OriginalValue)
            {
                changedField.Resolve(((Object)”Disputed”));
            }
            else
            {
               changedField.Resolve(RefreshMode.KeepCurrentValues);
            }
        }
    }
}

    // Remainder of catch block omitted.
} 
Catch e As ChangeConflictException
    For Each changedListItem As ObjectChangeConflict In teamSite.ChangeConflicts
        For Each changedField As MemberChangeConflict In changedListItem.MemberConflicts
            If changedField.Member.OriginalValue IsNot changedField.Member.OriginalValue Then
                changedField.Resolve((CType("Disputed", Object)))
            Else
               changedField.Resolve(RefreshMode.KeepCurrentValues)
            End If
        Next changedField
    Next changedListItem
End Try

    ' Remainder of catch block omitted.

另请参阅

引用

MemberChangeConflict 类

MemberChangeConflict 成员

Resolve 重载

Microsoft.SharePoint.Linq 命名空间