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 gösteren 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 yeniden ayarlanamaz.
Bu modda sabit öğeler şunlardır:
Kanal açıldıktan sonra yapılan tüm çağrılar SetContext bir
InvalidOperationExceptionoluşturur.Giden iletide aracılığıyla
ContextMessagePropertybağlam gönderme girişimi oluştururInvalidOperationException.Sunucudan bağlam içeren bir ileti alınırsa, kanal bir bağlamla zaten başlatıldığında bir
ProtocolExceptionoluşturulur. Kanal açıkça ayarlanmadan açıldığında sunucudan ilk bağlamı alabileceğinizi unutmayın.ContextMessagePropertyGelen 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 sonuçilirInvalidOperationException.
Bağlam HTTP tanımlama bilgileri dışındaki 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 falseolarak ayarlandığında true HTTP tanımlama bilgilerinin nasıl etkilendiği Enabled gösterilmektedir.
| Binding | IContextManager.Enabled Value | Bağlam HTTP Tanımlama Bilgisi Kapsamı | Diğer HTTP Tanımlama Bilgileri Kapsamı |
|---|---|---|---|
| TemelHttpBinding | Yok | Channelfactory | Channelfactory |
| TemelHttpContextBinding | doğru | Kanal | Kanal |
| TemelHttpContextBinding | false | Her ileti için (uygulama tarafından açıkça yönetilir) | Kanal |