Microsoft.Synchronization.MetadataStorage 네임스페이스
Metadata Storage Service를 사용하여 동기화 메타데이터를 저장하고 처리할 수 있습니다.
Metadata Storage Service는 저장소 서비스 작성기가 사용자 지정 클래스 집합을 구현하여 모든 종류의 데이터 저장소에 메타데이터를 저장할 수 있도록 여러 클래스를 추상 클래스로 정의합니다.
또한 Metadata Storage Service는 간단한 데이터베이스를 사용하여 파일 시스템의 단일 데이터베이스 파일에 동기화 메타데이터를 저장하는 클래스 구현을 제공합니다.
모든 메타데이터 저장소의 기본 클래스는 MetadataStore입니다. 이 추상 기본 클래스는 메타데이터 저장소에서 복제본 메타데이터를 초기화하고 가져오기 위한 메서드와 데이터베이스에서 트랜잭션을 시작하고 중지하기 위한 메서드를 포함합니다. 이 기본 클래스를 재정의하는 클래스는 SqlMetadataStore와 같은 메타데이터 저장소를 만들고 열기 위한 메서드를 제공할 가능성이 높습니다. 이 클래스에는 메타데이터 저장소를 만들고 열기 위한 메서드가 포함됩니다.
복제본 메타데이터는 메타데이터 저장소에서 InitializeReplicaMetadata를 사용하여 초기화됩니다. 이 메서드에 대한 FieldSchema 매개 변수를 사용하면 사용자 지정 필드 집합을 만들 수 있습니다. 이러한 필드를 사용하여 메타데이터 저장소에 있는 항목에 대한 추가 메타데이터를 저장할 수 있습니다. IndexSchema 매개 변수를 사용하면 필드 집합을 인덱스로 정의할 수 있습니다. 이를 사용하여 메타데이터 저장소에 있는 항목을 효율적으로 찾을 수 있습니다.
ReplicaMetadata 클래스는 특정 복제본에 대한 모든 메타데이터를 캡슐화합니다. 복제본 메타데이터는 GetKnowledge 및 ReplicaId와 같은 멤버를 사용하여 액세스할 수 있습니다.
이 클래스의 다음 메서드를 사용하면 동기화 공급자 메서드를 구현하는 데 도움이 됩니다. ReplicaMetadata.GetChangeBatch는 KnowledgeSyncProvider의 GetChangeBatch 메서드에 대한 작업 대부분을 수행할 수 있습니다.
GetLocalVersions는 변경 내용 적용자에 필요한 일괄 변경 내용 항목의 로컬 버전을 찾기 위해 KnowledgeSyncProvider의 ProcessChangeBatch 메서드에서 호출할 수 있습니다.
ReplicaMetadata는 또한 DeleteDetector도 포함합니다. 공급자는 이 속성에 포함된 개체를 사용하여 항목 저장소에서 삭제되었으며 메타데이터 저장소에서 삭제된 것으로 표시되어야 하는 항목을 검색할 수 있습니다.
메타데이터 저장소에서 FindItemMetadataById 또는 FindItemMetadataByIndexedFields와 같은 ReplicaMetadata 메서드를 사용하여 항목 ID 또는 인덱싱된 필드를 기준으로 항목 메타데이터를 검색할 수 있습니다. ItemMetadata 클래스는 특정 항목에 대한 모든 메타데이터를 캡슐화합니다. 이 클래스는 ChangeVersion, CreationVersion, GlobalId 및 IsDeleted와 같은 표준 동기화 메타데이터를 포함합니다. 또한 이 클래스는 복제본 메타데이터가 초기화될 때 정의된 모든 사용자 지정 필드에 액세스하는 데 사용할 수 있는 다양한 메서드를 포함합니다.
클래스
클래스 | 설명 | |
---|---|---|
ChangeUnitMetadata | 동기화 범위의 항목에 포함된 변경 단위와 연결된 메타데이터를 나타냅니다. | |
DeleteDetector | 파생 클래스에 의해 구현되면 DeleteDetector는 복제본에서 삭제된 항목을 확인합니다. 이러한 항목은 메타데이터 저장소에서 삭제된 것으로 표시되어야 합니다. | |
ExplicitTransactionRequiredException | 메타데이터 저장소에서 명시적 트랜잭션을 시작했어야 하는 메서드를 호출할 때 throw되는 예외입니다. | |
FieldSchema | 메타데이터 저장소에 있는 항목의 사용자 지정 필드를 정의하는 스키마 정보를 포함합니다. | |
IndexSchema | 메타데이터 저장소에 있는 항목을 보다 효율적으로 찾기 위해 사용할 수 있는 단일 또는 다중 열 인덱스를 나타냅니다. | |
ItemMetadata | 재정의되면 동기화 범위의 항목과 연결된 메타데이터를 나타냅니다. | |
ItemMetadataNotFoundException | 지정된 ID 또는 사용자 지정 필드 값이 설정된 항목이 메타데이터 저장소에 없을 때 throw되는 예외입니다. | |
KeyUniquenessException | 잘못되었거나 중복된 ID가 지정된 항목을 저장하려고 할 때 발생하는 예외입니다. | |
MetadataFieldNotFoundException | 명명된 사용자 지정 필드가 없을 때 발생하는 예외입니다. | |
MetadataStorageEngineException | 메타데이터 저장소 엔진에 대한 작업이 실패할 때 발생하는 예외입니다. | |
MetadataStore | 재정의되면 메타데이터 저장소를 나타내며 복제본 메타데이터 개체를 가져오기 위한 메서드를 제공합니다. 복제본 메타데이터 개체는 특정 복제본의 메타데이터에 액세스하는 데 사용됩니다. 이는 Metadata Storage Service API를 사용하는 모든 메타데이터 저장소의 추상 기본 클래스입니다. | |
MetadataStoreException | 모든 메타데이터 저장소 예외의 기본 클래스입니다. | |
MetadataStoreInvalidOperationException | 메서드 호출이 개체의 현재 상태에 대해 유효하지 않을 때 throw되는 예외입니다. | |
MetadataStoreProviderVersionMismatchException | DeserializeReplicaMetadata가 호출되고 지정된 예상 공급자 호환성 버전이 직렬화된 메타데이터에 저장된 공급자 버전과 일치하지 않는 경우 발생하는 예외입니다. | |
MultipleReplicasInStoreException | GetSingleReplicaMetadata가 호출되고 메타데이터 저장소에 둘 이상의 복제본에 대한 메타데이터가 포함되어 있을 때 발생하는 예외입니다. | |
ReplicaMetadata | 재정의되면 메타데이터 저장소의 복제본 메타데이터 및 항목 메타데이터에 액세스할 수 있게 됩니다. ReplicaMetadata는 동기화 공급자 메서드를 구현하기 위한 도우미 및 삭제 검색용 서비스도 제공합니다. | |
ReplicaMetadataAlreadyExistsException | 해당 복제본에 대한 메타데이터가 메타데이터 저장소에 이미 있는 상태에서 메타데이터 저장소에 새 복제본 메타데이터를 만들려고 할 때 발생하는 예외입니다. | |
ReplicaMetadataInUseException | 특정 복제본 ID에 대해 둘 이상의 활성 ReplicaMetadata 인스턴스를 만들려고 할 때 발생하는 예외입니다. | |
ReplicaMetadataNotFoundException | 지정된 복제본 ID에 대해 메타데이터 저장소에 복제본 메타데이터가 없을 때 발생하는 예외입니다. | |
SqlMetadataStore | 메타데이터를 저장하기 위해 경량 데이터베이스를 사용하여 구현하는 메타데이터 저장소를 나타냅니다. | |
SqlSyncFieldValue | 항목의 사용자 지정 필드 값을 나타냅니다. | |
SqlSyncMetadataStoreSerializer | 정식 메타데이터 파일 형식과 버전별 Metadata Storage Service 저장소 형식 간에 복제본의 메타데이터를 직렬화하고 역직렬화합니다. | |
SyncFieldValue | 파생 클래스에서 재정의되면 항목의 사용자 지정 필드 값을 나타냅니다. | |
SyncMetadataStoreSerializer | 파생 클래스에서 재정의되면 복제본에 대한 메타데이터를 직렬화하고 역직렬화합니다. | |
UpgradeStartEventArgs | MetadataStoreUpgradeStart 이벤트에 대한 데이터를 제공합니다. | |
VersionNotSupportedException | 메타데이터 저장소에서 복제본 메타데이터를 가져오려고 하지만 해당 메타데이터 버전이 메타데이터 저장소의 구현에서 지원되지 않을 때 발생하는 예외입니다. |
인터페이스
인터페이스 | 설명 | |
---|---|---|
IProviderUpgradeCallback | 파생 클래스에 의해 구현되는 경우 공급자 버전이 변경되었기 때문에 시작된 메타데이터 저장소 업그레이드 중에 발생하는 이벤트에 대해 공급자에 알리기 위해 Sync Framework에서 호출할 수 있는 메서드를 나타냅니다. |
대리자
대리자 | 설명 | |
---|---|---|
ReplicaMetadata.ItemFilterCallback | 일괄 변경 내용에 항목 변경 내용이 포함되어야 하는지 여부를 결정하는 메서드를 나타냅니다. |