共用方式為


SYNC_SAVE_ACTION 列舉

表示變更所指示之動作的類型。

typedef enum
{
  SSA_CREATE,
  SSA_UPDATE_VERSION_ONLY,
  SSA_UPDATE_VERSION_AND_DATA,
  SSA_UPDATE_VERSION_AND_MERGE_DATA,
  SSA_DELETE_AND_STORE_TOMBSTONE,
  SSA_DELETE_AND_REMOVE_TOMBSTONE,
  SSA_RENAME_SOURCE_AND_UPDATE_VERSION_AND_DATA,
  SSA_RENAME_DESTINATION_AND_UPDATE_VERSION_AND_DATA,
  SSA_DELETE_CONFLICTING_AND_SAVE_SOURCE_ITEM,
  SSA_STORE_MERGE_TOMBSTONE,
  SSA_CHANGE_ID_UPDATE_VERSION_AND_MERGE_DATA,
  SSA_CHANGE_ID_UPDATE_VERSION_AND_SAVE_DATA,
  SSA_CHANGE_ID_UPDATE_VERSION_AND_DELETE_AND_STORE_TOMBSTONE,
  SSA_CHANGE_ID_UPDATE_VERSION_ONLY,
  SSA_CREATE_GHOST,
  SSA_GHOST_ITEM,
  SSA_UNGHOST_ITEM,
  SSA_UPDATE_GHOST,
  SSA_DELETE_GHOST_AND_STORE_TOMBSTONE,
  SSA_DELETE_GHOST_WITHOUT_TOMBSTONE
}  SYNC_SAVE_ACTION;

成員

  • SSA_CREATE
    此項目是新的,而且會在目的地項目存放區中建立。 
  • SSA_UPDATE_VERSION_ONLY
    項目資料不會在目的地項目存放區中變更。目的地中繼資料內會覆寫此版本。選取目的地提供者的項目當做衝突的成功者時,也會進行這個動作。
  • SSA_UPDATE_VERSION_AND_DATA
    套用到目的地項目存放區的項目資料。現有的資料會被覆寫。提供的版本會覆寫目的地中繼資料內的現有版本。這個動作會對應到來源複寫中的項目建立、項目更新或變更單位更新。選取來源提供者的項目當做衝突的成功者時,也會進行這個動作。
  • SSA_UPDATE_VERSION_AND_MERGE_DATA
    項目資料會套用到目的地項目存放區。系統會使用某個提供者特定的方法,將現有的項目資料與更新的項目資料合併。此版本會覆寫目的地中繼資料內的現有版本。當衝突解決動作是 SRA_MERGE 時,就會進行這個動作。
  • SSA_DELETE_AND_STORE_TOMBSTONE
    此項目會從目的地項目存放區中刪除。目的地中繼資料內會儲存標記。這個動作會對應到從來源複寫刪除項目。
  • SSA_DELETE_AND_REMOVE_TOMBSTONE
    此項目會從目的地項目存放區中刪除。目的地中繼資料內不會保留標記。如果目的地中繼資料中有這個項目的清除標記,必須將它移除。這個動作是在被遺忘的知識復原期間叫用,而且會對應到來源複寫已清除此標記的項目刪除。
  • SSA_RENAME_SOURCE_AND_UPDATE_VERSION_AND_DATA
    從來源提供者所傳送的變更會重新命名,讓它不再與目的地複寫的衝突項目發生衝突,而且來源變更會套用至目的地複寫。
  • SSA_RENAME_DESTINATION_AND_UPDATE_VERSION_AND_DATA
    目的地複寫的衝突項目會重新命名,讓它不再與從來源提供者所傳送的變更發生衝突,而且來源變更會套用至目的地複寫。
  • SSA_DELETE_CONFLICTING_AND_SAVE_SOURCE_ITEM
    來源變更會套用至目的地複寫,而且會從目的地複寫中刪除衝突的目的地項目。
  • SSA_STORE_MERGE_TOMBSTONE
    將合併標記儲存在目的地中繼資料中。請考慮採用將 id1 指定為失敗項目識別碼而將 id2 指定為成功項目識別碼的合併動作。合併標記會包含 id1 當做失敗項目識別碼,而包含 id2 當做成功項目識別碼。如果合併標記已經存在包含 id1 當做失敗項目識別碼而包含另一個項目識別碼 id3 當做成功項目識別碼的目的地複寫中,請執行下列步驟。

    1. 如果 id2 小於 id3,請建立並儲存兩個合併標記。第一個合併標記會包含 id1 當做失敗項目識別碼,而包含 id2 當做成功項目識別碼。另一個合併標記會包含 id2 當做失敗項目識別碼,而包含 id3 當做成功項目識別碼。第二個合併標記可能已經存在,在此情況下,只要保留此標記即可。如此一來,系統就會建立合併標記的鏈結,並依照項目識別碼進行排序。

    2. 如果 id3 小於 id2,請傳回錯誤。

  • SSA_CHANGE_ID_UPDATE_VERSION_AND_MERGE_DATA
    來源項目的資料會與目的地項目結合。透過遵循針對 SSA_STORE_MERGE_TOMBSTONE 所述的相同步驟,儲存失敗項目識別碼的合併標記。
  • SSA_CHANGE_ID_UPDATE_VERSION_AND_SAVE_DATA
    透過遵循針對 SSA_STORE_MERGE_TOMBSTONE 所述的相同步驟,儲存失敗項目識別碼的合併標記。
  • SSA_CHANGE_ID_UPDATE_VERSION_AND_DELETE_AND_STORE_TOMBSTONE
    透過遵循針對 SSA_STORE_MERGE_TOMBSTONE 所述的相同步驟,儲存失敗項目識別碼的合併標記。刪除成功項目識別碼所識別的項目,並且儲存其標記。
  • SSA_CHANGE_ID_UPDATE_VERSION_ONLY
    透過遵循針對 SSA_STORE_MERGE_TOMBSTONE 所述的相同步驟,儲存失敗項目識別碼的合併標記。僅套用成功項目變更的中繼資料。
  • SSA_CREATE_GHOST
    建立此項目的準刪除項目。準刪除項目是指同時包含指出此項目最近是否位於篩選中的值以及「移出版本」(Move-out Version) 的項目。移出版本會指出將此項目移出篩選之變更的版本。
  • SSA_GHOST_ITEM
    將使用中項目變更為準刪除項目。若要這樣做,請儲存表示此項目最近位於篩選中的值、將這項變更的版本儲存為此項目的移出版本,然後從項目存放區中移除項目資料。
  • SSA_UNGHOST_ITEM
    啟用準刪除項目。若要這樣做,請從中繼資料中移除移出版本,然後將項目資料儲存在項目存放區中。
  • SSA_UPDATE_GHOST
    更新準刪除項目的版本。這是此項目之目前版本的更新,而非移出版本的更新。
  • SSA_DELETE_GHOST_AND_STORE_TOMBSTONE
    將準刪除項目變更為標記。這個標記表示已經刪除此項目。若要這樣做,請儲存表示已經刪除此項目的值。
  • SSA_DELETE_GHOST_WITHOUT_TOMBSTONE
    從中繼資料存放區中移除準刪除項目,但不儲存此項目的標記。

備註

當提供者未針對完整變更批次使用交易時,提供者必須從 ISaveChangeContext 物件擷取更新後的知識,並在套用變更的同時儲存此知識。

需求

標頭: Synchronization.h

請參閱

參考

ISaveChangeWithChangeUnitsContext 介面
ISynchronousNotifyingChangeApplierTarget 介面
IAsynchronousNotifyingChangeApplierTarget 介面
IFeedBuilder 介面

概念

Sync Framework 核心元件