ContextBindingElement Třída
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í.
Poskytuje úroveň ochrany a mechanismus výměny v rámci kontextu elementu vazby a funkce pro sestavení naslouchacích procesů kanálů a továren.
public ref class ContextBindingElement : System::ServiceModel::Channels::BindingElement, System::ServiceModel::Channels::IContextBindingElement, System::ServiceModel::Description::IPolicyExportExtension
public class ContextBindingElement : System.ServiceModel.Channels.BindingElement, System.ServiceModel.Channels.IContextBindingElement, System.ServiceModel.Description.IPolicyExportExtension
type ContextBindingElement = class
inherit BindingElement
interface IPolicyExportExtension
interface IContextBindingElement
Public Class ContextBindingElement
Inherits BindingElement
Implements IContextBindingElement, IPolicyExportExtension
- Dědičnost
- Implementuje
Poznámky
ContextBindingElement umožňuje uživateli přidat prvek do vazby služby pro správu protokolu výměny kontextu. ContextBindingElement je obvykle skládaný z prvků spolehlivosti, zabezpečení a transportních vazeb. ContextBindingElement nevyžaduje žádné možnosti konfigurace a může vytvářet objekty pro vytváření kanálů pro IRequestChannel, IRequestSessionChannela IDuplexSessionChannel. Může také vytvářet naslouchací procesy kanálu pro IReplyChannel, IReplySessionChannela IDuplexSessionChannel. Kontextový kanál nezmění rozhraní kanálu – podkladový zásobník kanálu musí podporovat požadovaný tvar kanálu a schopnost relace.
Naslouchací procesy a továrny kanálu slouží k vytvoření části zásobníků kanálů, které slouží ke zpracování příchozích a odchozích zpráv.
Poznámka
Pokud se vytvoří vazba založená na relaci s ContextBindingElement a používá se se kontraktem, který určuje SessionMode = NotAllowed, při vytvoření kanálu se vyvolá InvalidOperationException s následujícím textem: "Po otevření kanálu nelze povolit nebo zakázat správu kontextu kanálu." Je nutné nastavit SessionMode na Allowed nebo Required nebo použít kanál založený na relacích.
Při vytváření vlastní vazby doporučujeme přidat ContextBindingElement do BindingElementCollection vlastní vazby před přidáním jakýchkoli prvků spolehlivosti a zabezpečení, pokud existují. Pokud ne, může služba vyvolat ProtocolException s následující zprávou:
"Kontextový kanál obdržel zprávu s kontextem, který neodpovídá aktuálnímu kontextu uloženému v mezipaměti kanálu. Ujistěte se, že služba po původním nastavení nebo zakázání správy kontextu nastavením vlastnosti kanálu IContextManager.Enabled na false.
Konstruktory
ContextBindingElement() |
Inicializuje novou instanci ContextBindingElement třídy. |
ContextBindingElement(ProtectionLevel, ContextExchangeMechanism, Uri, Boolean) |
Inicializuje novou instanci ContextBindingElement třídy se zadanou úrovní ochrany, mechanismem výměny kontextu, adresou zpětného volání klienta a hodnotou, která určuje, zda je povolena správa kontextu. |
ContextBindingElement(ProtectionLevel, ContextExchangeMechanism, Uri) |
Inicializuje novou instanci ContextBindingElement třídy se zadanou úrovní ochrany, mechanismem výměny kontextu a adresou zpětného volání klienta. |
ContextBindingElement(ProtectionLevel, ContextExchangeMechanism) |
Inicializuje novou instanci třídy ContextBindingElement se zadanou úrovní ochrany a mechanismu výměny. |
ContextBindingElement(ProtectionLevel) |
Inicializuje novou instanci třídy ContextBindingElement se zadanou úrovní ochrany. |
Vlastnosti
ClientCallbackAddress |
Získá nebo nastaví adresu zpětného volání klienta pro element vazby. |
ContextExchangeMechanism |
Získá nebo nastaví mechanismus výměny sloužící ke komunikaci kontextu pro element vazby. |
ContextManagementEnabled |
Získá nebo nastaví hodnotu, která určuje, zda je povolena správa kontextu. |
ProtectionLevel |
Získá nebo nastaví úroveň ochrany pro element vazby z kontextu. |
Metody
BuildChannelFactory<TChannel>(BindingContext) |
Sestaví zásobník objektu pro vytváření kanálů na klientovi, který vytvoří zadaný typ kanálu pro zadaný kontext. |
BuildChannelListener<TChannel>(BindingContext) |
Sestaví zásobník naslouchacího procesu kanálu na klientovi, který přijímá zadaný typ kanálu pro zadaný kontext. |
CanBuildChannelFactory<TChannel>(BindingContext) |
Vrátí hodnotu, která určuje, zda aktuální element vazby může vytvořit objekt pro zadaný typ kanálu a kontextu. |
CanBuildChannelListener<TChannel>(BindingContext) |
Vrátí hodnotu, která určuje, jestli aktuální vazba může vytvořit naslouchací proces pro zadaný typ kanálu a kontextu. |
Clone() |
Vytvoří nový objekt ContextBindingElement inicializovaný z aktuálního objektu. |
Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
ExportPolicy(MetadataExporter, PolicyConversionContext) |
Zapíše vlastní kontrolní výrazy zásad do kontextu elementu vazby. |
GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
GetProperty<T>(BindingContext) |
Vrátí zadaný objekt se zadaným kontextem z příslušné vrstvy v zásobníku kanálu. |
GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |