EnlistmentOptions Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, zda má být objekt zařazen během fáze přípravy.
Tento výčet podporuje bitové kombinace hodnot jeho členů.
public enum class EnlistmentOptions
[System.Flags]
public enum EnlistmentOptions
[<System.Flags>]
type EnlistmentOptions =
Public Enum EnlistmentOptions
- Dědičnost
- Atributy
Pole
EnlistDuringPrepareRequired | 1 | Objekt musí být zařazen během počáteční fáze procesu závazku. |
None | 0 | Objekt nevyžaduje zařazení během počáteční fáze procesu závazku. |
Poznámky
Tento výčet je předán do EnlistVolatile a EnlistDurable a metody upozorňovat správce transakcí, zda správce prostředků musí vytvořit další zařazení během fáze přípravy. Další informace o zařazení naleznete v tématu Zařazení prostředků jako účastníci v transakci.
Pokud EnlistDuringPrepareRequired je zadána během zařazení, správce prostředků indikuje, že chce obdržet oznámení o přípravě, zatímco nové zařazení jsou stále povoleny pro transakci. Správce prostředků, který funguje jako mezipaměť pro jiný trvalý prostředek, například back-endovou databázi, by pravděpodobně použil tuto možnost během zařazení. Když prostředek ukládání do mezipaměti obdrží oznámení o přípravě, přenese jeho obsah do trvalého prostředku. Tím, trvalý prostředek zařazení na transakci stát se účastníkem 2 Fáze Commit (2PC) protokolu. Než k tomu dojde, byl zařazen pouze prostředek ukládání do mezipaměti (nikoli trvalý prostředek).
Pokud je zadána hodnota None, zařazení znamená, že neobdrží oznámení o přípravě, dokud není příliš pozdě vytvořit nové zařazení v 2PC. V našem předchozím scénáři platí, že pokud prostředek ukládání do mezipaměti určí tuto možnost během zařazení a pokusí se vyprázdnit svou mezipaměť během oznámení o přípravě, trvalý prostředek obdrží výjimku při pokusu o zařazení, protože je příliš pozdě.
Žádný by se měl použít jako výchozí.