IContextManager.Enabled Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of het contextbeheer is ingeschakeld.
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
Waarde van eigenschap
true als de context is ingeschakeld; anders, false.
Opmerkingen
Wanneer contextbeheer is ingeschakeld, slaat het contextkanaal de context gedurende de levensduur in de cache op. Context kan worden opgehaald uit het kanaal via de IContextManager kanaaleigenschap door er een methode op aan te roepen GetContext . Het kanaal kan ook vooraf worden geïnitialiseerd met context voordat het wordt geopend door de SetContext methode op de kanaaleigenschap aan te roepen. Zodra het kanaal is geïnitialiseerd met context, kan het niet opnieuw worden ingesteld.
Dit zijn invarianten in deze modus:
Elke oproep naar SetContext nadat het kanaal is geopend, genereert een
InvalidOperationException.Elke poging om context te verzenden via het
ContextMessagePropertyin een uitgaand bericht genereertInvalidOperationException.Als er een bericht van de server met context wordt ontvangen, wordt er een bericht gegenereerd wanneer het kanaal al is geïnitialiseerd met een context
ProtocolException. Houd er rekening mee dat u de eerste context van een server kunt ontvangen als het kanaal wordt geopend zonder expliciet de context in te stellen.Het
ContextMessagePropertyinkomende bericht is altijdnull.
Wanneer contextbeheer niet is ingeschakeld, beheert het contextkanaal geen context. Het is de verantwoordelijkheid van de toepassing om context op te halen, te beheren en toe te passen via de ContextMessageProperty. Elke poging om aan te roepen GetContext of SetContext te gebruiken via de IContextManager kanaaleigenschap resulteert in InvalidOperationException.
Alle HTTP-cookies, met uitzondering van context-HTTP-cookies, worden verwerkt op kanaalniveau. Context-HTTP-cookies worden beheerd op toepassingsniveau. Dit kan onverwachte gevolgen hebben wanneer kanalen worden gedeeld om te communiceren met verschillende instanties waarop is gericht ContextMessageProperty. In de volgende tabel ziet u hoe HTTP-cookies worden beïnvloed wanneer Enabled deze is ingesteld op of truefalse.
| Binding | Waarde IContextManager.Enabled | Context HTTP-cookiebereik | Ander HTTP-cookiesbereik |
|---|---|---|---|
| BasicHttpBinding | n/a | ChannelFactory | ChannelFactory |
| BasicHttpContextBinding | waar | Kanaal | Kanaal |
| BasicHttpContextBinding | false | Voor elk bericht (expliciet beheerd door toepassing) | Kanaal |