IContextManager.Enabled Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bağlam yönetiminin etkinleştirilip etkinleştirilmediğini belirten bir değer alır veya ayarlar.
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
Özellik Değeri
true
bağlam etkinleştirildiyse; aksi takdirde , false
.
Açıklamalar
Bağlam yönetimi etkinleştirildiğinde bağlam kanalı bağlamı ömrü boyunca önbelleğe alır. Bağlam kanal özelliği üzerinden IContextManager
kanalda yöntemini çağırarak GetContext alınabilir. Kanal özelliğinde yöntemi çağrılarak SetContext açılmadan önce kanal bağlamla önceden başlatılabilir. Kanal bağlamla başlatıldıktan sonra sıfırlanamaz.
Bu modda sabit öğeler şunlardır:
SetContext Kanal açıldıktan sonra çağrısı bir oluşturur
InvalidOperationException
.Giden iletide aracılığıyla
ContextMessageProperty
bağlam gönderme girişimleri oluştururInvalidOperationException
.Sunucudan bağlam içeren bir ileti alınırsa, kanal bir bağlamla zaten başlatıldığında bir
ProtocolException
oluşturulur. Kanal açık bir şekilde ayarlanmadan açılırsa bir sunucudan ilk bağlamı alabileceğinizi unutmayın.ContextMessageProperty
Gelen iletinin üzerindeki her zamannull
şeklindedir.
Bağlam yönetimi etkinleştirilmediğinde bağlam kanalı bağlamı yönetmez. aracılığıyla bağlamı almak, yönetmek ve uygulamak uygulamanın sorumluluğundadır ContextMessageProperty
. Kanal özelliği aracılığıyla IContextManager
çağrı GetContext veya SetContext kullanma girişimleri ile InvalidOperationException
sonuçilir.
Bağlam HTTP tanımlama bilgileri dışında tüm HTTP tanımlama bilgileri kanal düzeyinde işlenir. Bağlam HTTP tanımlama bilgileri uygulama düzeyinde yönetilir. Kanallar tarafından ContextMessagePropertyhedeflenen farklı örneklerle konuşmak üzere paylaşıldığında bu beklenmeyen sonuçlara neden olabilir. Aşağıdaki tabloda, veya false
olarak ayarlandığında true
HTTP tanımlama bilgilerinin nasıl etkilendiği Enabled gösterilmektedir.
Bağlama | IContextManager.Enabled Value | Bağlam HTTP Tanımlama Bilgisi Kapsamı | Diğer HTTP Tanımlama Bilgileri Kapsamı |
---|---|---|---|
TemelHttpBinding | yok | Channelfactory | Channelfactory |
TemelHttpContextBinding | true | Kanal | Kanal |
TemelHttpContextBinding | yanlış | Her ileti için (uygulama tarafından açıkça yönetilir) | Kanal |