이 변경 단위에 대한 데이터가 항목 저장소에 저장될 때 복구할 수 있는 오류가 발생했음을 나타냅니다.
네임스페이스: Microsoft.Synchronization
어셈블리: microsoft.synchronization.dll의 Microsoft.Synchronization
구문
‘선언
Public Sub RecordRecoverableErrorForChangeUnit ( _
changeUnitChange As ChangeUnitChange, _
errorData As RecoverableErrorData _
)
‘사용 방법
Dim instance As SaveChangeWithChangeUnitsContext
Dim changeUnitChange As ChangeUnitChange
Dim errorData As RecoverableErrorData
instance.RecordRecoverableErrorForChangeUnit(changeUnitChange, errorData)
public void RecordRecoverableErrorForChangeUnit (
ChangeUnitChange changeUnitChange,
RecoverableErrorData errorData
)
public:
void RecordRecoverableErrorForChangeUnit (
ChangeUnitChange^ changeUnitChange,
RecoverableErrorData^ errorData
)
public void RecordRecoverableErrorForChangeUnit (
ChangeUnitChange changeUnitChange,
RecoverableErrorData errorData
)
public function RecordRecoverableErrorForChangeUnit (
changeUnitChange : ChangeUnitChange,
errorData : RecoverableErrorData
)
매개 변수
- changeUnitChange
오류를 일으킨 변경 단위 변경 내용입니다.
- errorData
오류에 대한 추가 정보입니다.
예외
| 예외 형식 | 조건 |
|---|---|
SaveChangeWithChangeUnitsContext 개체에 포함된 저장 동작은 Create입니다. 이 상황에서 전체 항목 만들기는 실패해야 합니다. |
주의
이 메서드가 호출되면 ItemChangeUnitOverride 개체가 배운 정보에 추가됩니다. 그리고 동기화 세션이 지속되는 동안 변경 단위 변경 내용이 다시 열거되지 않습니다.
예제
다음 예제에서는 대상 복제본에서 변경 단위를 만들거나 업데이트하려고 시도합니다. 예외가 발생하면 예외를 포함하는 복구할 수 있는 오류가 변경 단위에 대해 기록되고 동기화가 계속됩니다.
Case SaveChangeAction.Create, SaveChangeAction.UpdateVersionAndData
If True Then
' Update the item store and metadata store for the specified change unit.
Try
Dim cuData As String = DirectCast(context.ChangeData, String())(cuChange.ChangeUnitId.GetByteId())
_ContactStore.UpdateContactFromSync(change, cuChange, cuData)
Catch ex As Exception
Dim errData As New RecoverableErrorData(ex)
context.RecordRecoverableErrorForChangeUnit(cuChange, errData)
End Try
Exit Select
End If
case SaveChangeAction.Create:
case SaveChangeAction.UpdateVersionAndData:
{
// Update the item store and metadata store for the specified change unit.
try
{
string cuData = ((string[])context.ChangeData)[cuChange.ChangeUnitId.GetByteId()];
_ContactStore.UpdateContactFromSync(change, cuChange, cuData);
}
catch (Exception ex)
{
RecoverableErrorData errData = new RecoverableErrorData(ex);
context.RecordRecoverableErrorForChangeUnit(cuChange, errData);
}
break;
}
참고 항목
참조
SaveChangeWithChangeUnitsContext 클래스
SaveChangeWithChangeUnitsContext 멤버
Microsoft.Synchronization 네임스페이스