IContextManager.Enabled Vlastnost
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í.
Získá nebo nastaví hodnotu, která označuje, zda je povolena správa kontextu.
public:
property bool Enabled { bool get(); void set(bool value); };
public bool Enabled { get; set; }
member this.Enabled : bool with get, set
Public Property Enabled As Boolean
Hodnota vlastnosti
true
pokud je kontext povolen; v opačném případě . false
Poznámky
Když je povolena správa kontextu, kontextový kanál ukládá kontext do mezipaměti kontext po celou dobu jeho života. Kontext lze načíst z kanálu prostřednictvím IContextManager
vlastnosti kanálu voláním GetContext metody na kanálu. Kanál lze také před otevřením předem inicializovat s kontextem zavoláním SetContext metody u vlastnosti kanálu. Jakmile je kanál inicializován s kontextem, nelze ho resetovat.
V tomto režimu jsou invarianty následující:
Jakékoli volání SetContext po otevření kanálu vyvolá .
InvalidOperationException
Jakýkoli pokus o odeslání kontextu prostřednictvím
ContextMessageProperty
v odchozí zprávě vyvoláInvalidOperationException
.Pokud je ze serveru přijata zpráva s kontextem, pokud je kanál již inicializován s kontextem
ProtocolException
, vyvolá se zpráva . Všimněte si, že pokud je kanál otevřený bez explicitního nastavení kontextu, můžete ze serveru přijmout počáteční kontext.U
ContextMessageProperty
příchozí zprávy je vždynull
hodnota .
Pokud není povolena správa kontextu, kontextový kanál nespravuje kontext. Za načtení, správu a použití kontextu prostřednictvím ContextMessageProperty
aplikace zodpovídá aplikace . Jakýkoli pokus o volání GetContext nebo SetContext použití prostřednictvím IContextManager
vlastnosti kanálu má za následek InvalidOperationException
.
Všechny soubory cookie HTTP, s výjimkou kontextových souborů HTTP cookie, se zpracovávají na úrovni kanálu. Kontextové soubory cookie HTTP se spravují na úrovni aplikace. To může mít neočekávané důsledky, když se kanály sdílejí, aby komunikovaly s různými instancemi, na které cílí ContextMessageProperty. Následující tabulka ukazuje, jak jsou ovlivněny soubory cookie HTTP, pokud Enabled je nastavena hodnota nebo true
false
.
Vazba | IContextManager.Enabled – hodnota | Kontextový rozsah souborů cookie HTTP | Rozsah jiných souborů cookie HTTP |
---|---|---|---|
ZákladníhttpBinding | Není k dispozici | Channelfactory | Channelfactory |
BasicHttpContextBinding | true | Kanál | Kanál |
BasicHttpContextBinding | false (nepravda) | Pro každou zprávu (explicitně spravovanou aplikací) | Kanál |