SimpleSyncProviderDeleteMode 열거형
로컬 항목 삭제가 다른 복제본에 전파되는지 여부에 대한 옵션을 나타냅니다.
네임스페이스: Microsoft.Synchronization.SimpleProviders
어셈블리: microsoft.synchronization.simpleproviders.dll의 Microsoft.Synchronization.SimpleProviders
구문
‘선언
Public Enumeration SimpleSyncProviderDeleteMode
‘사용 방법
Dim instance As SimpleSyncProviderDeleteMode
public enum SimpleSyncProviderDeleteMode
public enum class SimpleSyncProviderDeleteMode
public enum SimpleSyncProviderDeleteMode
public enum SimpleSyncProviderDeleteMode
멤버
멤버 이름 | 설명 | |
---|---|---|
LocalOnly | 로컬 저장소에서 항목이 삭제되지만 다른 복제본에 삭제가 전파되지 않습니다. | |
Normal | 로컬 저장소에서 항목이 삭제되고 다른 복제본에 삭제가 전파됩니다. |
주의
일부 동기화 시나리오에서는 해당 삭제를 다른 복제본으로 전파하지 않고 로컬 복제본에서 항목을 삭제할 수 있는 기능이 필요합니다. 예를 들어 서로 다른 영업 사원의 정보를 저장하는 몇 가지 장치와 서버를 동기화할 수 있습니다. 각 장치의 공간은 제한되어 있으므로 영업 사원은 장치에서 오래 전에 완료된 주문을 삭제합니다. 서버에서 이 데이터를 필요로 할 수 있으므로 이러한 종류의 삭제는 서버로 전파되면 안 됩니다. 단순 공급자에서는 로컬로 삭제해야 하는 데이터를 지정할 수 있습니다. 세션 단위로 삭제 동작을 제어하려면 SetDeleteMode 메서드에 적절한 옵션을 지정합니다.
예제
다음 코드 예제에서는 동기화 중에 삭제가 전파되지 않도록 지정합니다.
public override void EnumerateChanges(byte[] anchor, AnchorEnumerationContext context)
{
context.SetDeleteMode(SimpleSyncProviderDeleteMode.LocalOnly);
List<LocalItemChange> itemChanges = new List<LocalItemChange>();
int startIndex = -1;
if (anchor != null)
{
startIndex = _store.Changes.IndexOfKey(BitConverter.ToUInt64(anchor, 0));
}
for (int i = startIndex + 1; i < _store.Changes.Count; i++)
{
itemChanges.Add(_store.Changes.Values[i]);
}
// If the anchor is corrupt or out of date we could revert back to
// full enumeration mode for this session, and enumerate all items.
// This is done by calling context.ReportItemsAndAutodetectDeletes.
context.ReportChanges(itemChanges, _store.GetAnchor());
}
public override void EnumerateChanges(byte[] anchor, AnchorEnumerationContext context)
{
context.SetDeleteMode(SimpleSyncProviderDeleteMode.LocalOnly);
List<LocalItemChange> itemChanges = new List<LocalItemChange>();
int startIndex = -1;
if (anchor != null)
{
startIndex = _store.Changes.IndexOfKey(BitConverter.ToUInt64(anchor, 0));
}
for (int i = startIndex + 1; i < _store.Changes.Count; i++)
{
itemChanges.Add(_store.Changes.Values[i]);
}
// If the anchor is corrupt or out of date we could revert back to
// full enumeration mode for this session, and enumerate all items.
// This is done by calling context.ReportItemsAndAutodetectDeletes.
context.ReportChanges(itemChanges, _store.GetAnchor());
}