IContextManager.Enabled Właściwość

Definicja

Pobiera lub ustawia wartość wskazującą, czy zarządzanie kontekstem jest włączone.

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

Wartość właściwości

Boolean

true Jeśli kontekst jest włączony; w przeciwnym razie false .

Uwagi

Gdy włączono zarządzanie kontekstem, kanał kontekstu buforuje kontekst w jego okres istnienia. Kontekst można pobrać z kanału za pośrednictwem IContextManager właściwości kanału przez wywołanie metody w tym kanale GetContext . Kanał może być również wstępnie zainicjowany przy użyciu kontekstu przed otwarciem przez wywołanie SetContext metody we właściwości kanału. Po zainicjowaniu kanału z kontekstem nie można go zresetować.

Następujące elementy są nieodmianami w tym trybie:

  • Każde wywołanie SetContext po otwartym kanale zgłasza InvalidOperationException .

  • Wszystkie próby wysłania kontekstu za pomocą ContextMessageProperty wiadomości wychodzącej zgłaszają InvalidOperationException .

  • Jeśli komunikat jest odbierany z serwera z kontekstem, gdy kanał jest już zainicjowany przy użyciu kontekstu a ProtocolException jest zgłaszany. Należy zauważyć, że można odbierać kontekst początkowy z serwera, jeśli kanał jest otwarty bez jawnego ustawiania kontekstu.

  • ContextMessagePropertyKomunikat przychodzący jest zawsze null .

Gdy zarządzanie kontekstem nie jest włączone, kanał kontekstu nie będzie zarządzać kontekstem. Jest on odpowiedzialny za pobieranie i stosowanie kontekstu oraz zarządzanie nim za pomocą programu ContextMessageProperty . Każda próba wywołania GetContext lub SetContext użycia przez IContextManager Właściwość Channel powoduje InvalidOperationException .

Wszystkie pliki cookie HTTP, z wyjątkiem kontekstu plików cookie protokołu HTTP, są obsługiwane na poziomie kanału. Kontekstowe pliki cookie HTTP są zarządzane na poziomie aplikacji. Może to mieć nieoczekiwane konsekwencje, gdy kanały są udostępniane, aby komunikować się z różnymi wystąpieniami przeznaczonymi dla programu ContextMessageProperty . W poniższej tabeli pokazano, w jaki sposób pliki cookie HTTP mają wpływ Enabled , gdy jest ustawiony na true lub false .

Wiązanie IContextManager. Enabled — wartość Zakres plików cookie HTTP kontekstu Zakres innych plików cookie HTTP
BasicHttpBinding n/d Endpoint Endpoint
BasicHttpContextBinding true Kanał Kanał
BasicHttpContextBinding fałsz Dla każdego komunikatu (jawnie zarządzany przez aplikację) Kanał

Dotyczy