ContextBindingElement ContextBindingElement ContextBindingElement ContextBindingElement Class

Definizione

Fornisce un livello di protezione e un meccanismo di scambio come parte del contesto di un elemento di associazione e la funzionalità per compilare i listener del canale e le channel factory.Provides a protection level and an exchange mechanism as part of the context of a binding element and the functionality to build the channel listeners and factories.

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
Ereditarietà
ContextBindingElementContextBindingElementContextBindingElementContextBindingElement
Implementazioni

Commenti

ContextBindingElement consente all'utente di aggiungere un elemento all'associazione di un servizio per la gestione del protocollo di scambio del contesto.The ContextBindingElement allows the user to add an element to the binding of a service for managing its context exchange protocol. ContextBindingElement è in genere basata su elementi di associazione di affidabilità, di sicurezza e di trasporto.The ContextBindingElement is typically stacked on top of reliability, security, and transport binding elements. ContextBindingElement non richiede opzioni di configurazione e può creare channel factory per IRequestChannel, IRequestSessionChannele IDuplexSessionChannel.A ContextBindingElement does not require any configuration options and can create channel factories for IRequestChannel, IRequestSessionChannel, and IDuplexSessionChannel. Può inoltre creare listener del canale per IReplyChannel, IReplySessionChannel e IDuplexSessionChannel.It can also create channel listeners for IReplyChannel, IReplySessionChannel, and IDuplexSessionChannel. Un canale del contesto non modifica l'interfaccia del canale: lo stack di canali sottostante deve supportare la funzionalità di forma e la sessione di canale richiesto.A context channel does not change the channel interface - the underlying channel stack must support the requested channel shape and session capability.

I listener del canale e le channel factory vengono utilizzati per costruire la parte degli stack dei canali utilizzata per elaborare i messaggi in ingresso e in uscita.The channel listeners and factories are used to construct the part of the channel stacks used to process incoming and outgoing messages.

Nota

Se viene creata un'associazione basata sulla sessione con un ContextBindingElement e usato con un contratto che specifica SessionMode = NotAllowed, un InvalidOperationException viene generata quando viene creato il canale con il testo seguente: "Gestione del contesto del canale non può essere abilitata o disabilitata dopo che il canale viene aperto."If a session-based binding is created with a ContextBindingElement and used with a contract that specifies SessionMode = NotAllowed, an InvalidOperationException is thrown when the channel is created with the following text: "Channel context management cannot be enabled or disabled after the channel is opened." È necessario impostare SessionMode su Allowed o su Required oppure non utilizzare un canale basato sulla sessione.You must set SessionMode to Allowed or Required or not use a session-based channel.

Quando si crea un'associazione personalizzata, è consigliabile aggiungere ContextBindingElement alla classe BindingElementCollection dell'associazione personalizzata prima di aggiungere elementi di associazione di sicurezza e di affidabilità.When creating a custom binding, it is recommended that you add the ContextBindingElement to the BindingElementCollection of the custom binding before adding any reliability and security binding elements, if present. In caso contrario, il servizio può generare una classe ProtocolException con il messaggio seguente:If you do not, your service may throw a ProtocolException with the following message:

"Il canale del contesto ha ricevuto un messaggio con contesto che non corrisponde al contesto corrente memorizzato nella cache sul canale."Context channel received a message with context which does not match the current context cached at the channel. Assicurarsi che il servizio non modifichi il contesto dopo l'impostazione iniziale o disabiliti la gestione del contesto impostando la proprietà del canale 'IContextManager.Enabled' su falso."Ensure service does not change context after it was originally set or disable context management by setting channel property 'IContextManager.Enabled' to false."

Costruttori

ContextBindingElement() ContextBindingElement() ContextBindingElement() ContextBindingElement()

Inizializza una nuova istanza della classe ContextBindingElement.Initializes a new instance of the ContextBindingElement class.

ContextBindingElement(ProtectionLevel) ContextBindingElement(ProtectionLevel) ContextBindingElement(ProtectionLevel) ContextBindingElement(ProtectionLevel)

Inizializza una nuova istanza della classe ContextBindingElement con un livello di protezione specificato.Initializes a new instance of the ContextBindingElement class with a specified level of protection.

ContextBindingElement(ProtectionLevel, ContextExchangeMechanism) ContextBindingElement(ProtectionLevel, ContextExchangeMechanism) ContextBindingElement(ProtectionLevel, ContextExchangeMechanism) ContextBindingElement(ProtectionLevel, ContextExchangeMechanism)

Inizializza una nuova istanza della classe ContextBindingElement con un livello di protezione e un meccanismo di scambio specificati.Initializes a new instance of the ContextBindingElement class with a specified level of protection and exchange mechanism.

ContextBindingElement(ProtectionLevel, ContextExchangeMechanism, Uri) ContextBindingElement(ProtectionLevel, ContextExchangeMechanism, Uri) ContextBindingElement(ProtectionLevel, ContextExchangeMechanism, Uri) ContextBindingElement(ProtectionLevel, ContextExchangeMechanism, Uri)

Inizializza una nuova istanza della classe ContextBindingElement con il livello di protezione, meccanismo di scambio del contesto e indirizzo di callback del client specificati.Initializes a new instance of the ContextBindingElement class with the specified protection level, context exchange mechanism, and client callback address.

ContextBindingElement(ProtectionLevel, ContextExchangeMechanism, Uri, Boolean) ContextBindingElement(ProtectionLevel, ContextExchangeMechanism, Uri, Boolean) ContextBindingElement(ProtectionLevel, ContextExchangeMechanism, Uri, Boolean) ContextBindingElement(ProtectionLevel, ContextExchangeMechanism, Uri, Boolean)

Inizializza una nuova istanza della classe ContextBindingElement con specificati il livello di protezione, meccanismo di scambio del contesto, indirizzo di callback del client e un valore che specifica se la gestione del contesto è abilitata.Initializes a new instance of the ContextBindingElement class with the specified protection level, context exchange mechanism, client callback address, and a value that specifies whether context management is enabled.

Proprietà

ClientCallbackAddress ClientCallbackAddress ClientCallbackAddress ClientCallbackAddress

Ottiene o imposta l'indirizzo di callback del client per l'elemento di associazione.Gets or sets the client callback address for the binding element.

ContextExchangeMechanism ContextExchangeMechanism ContextExchangeMechanism ContextExchangeMechanism

Ottiene o imposta il meccanismo di scambio utilizzato per comunicare contesto per l'elemento di associazione.Gets or sets the exchange mechanism used to communicate context for the binding element.

ContextManagementEnabled ContextManagementEnabled ContextManagementEnabled ContextManagementEnabled

Ottiene o imposta un valore che specifica se la gestione del contesto è abilitata.Gets or sets a value that specifies whether context management is enabled.

ProtectionLevel ProtectionLevel ProtectionLevel ProtectionLevel

Ottiene o imposta il livello di protezione per l'elemento di associazione dal contesto.Gets or sets the level of protection for the binding element from the context.

Metodi

BuildChannelFactory<TChannel>(BindingContext) BuildChannelFactory<TChannel>(BindingContext) BuildChannelFactory<TChannel>(BindingContext) BuildChannelFactory<TChannel>(BindingContext)

Compila lo stack della channel factory nel client che crea un tipo di canale specificato per un contesto specificato.Builds the channel factory stack on the client that creates a specified type of channel for a specified context.

BuildChannelListener<TChannel>(BindingContext) BuildChannelListener<TChannel>(BindingContext) BuildChannelListener<TChannel>(BindingContext) BuildChannelListener<TChannel>(BindingContext)

Compila lo stack del listener del canale nel client che accetta un tipo di canale specificato per un contesto specificato.Builds the channel listener stack on the client that accepts a specified type of channel for a specified context.

CanBuildChannelFactory<TChannel>(BindingContext) CanBuildChannelFactory<TChannel>(BindingContext) CanBuildChannelFactory<TChannel>(BindingContext) CanBuildChannelFactory<TChannel>(BindingContext)

Restituisce un valore che indica se l'elemento di associazione corrente può compilare una factory per un tipo di canale e di contesto specificati.Returns a value that indicates whether the current binding element can build a factory for a specified type of channel and context.

CanBuildChannelListener<TChannel>(BindingContext) CanBuildChannelListener<TChannel>(BindingContext) CanBuildChannelListener<TChannel>(BindingContext) CanBuildChannelListener<TChannel>(BindingContext)

Restituisce un valore che indica se l'associazione corrente può compilare un listener per un tipo di canale e di contesto specificati.Returns a value that indicates whether the current binding can build a listener for a specified type of channel and context.

Clone() Clone() Clone() Clone()

Crea un nuovo oggetto ContextBindingElement inizializzato da quello corrente.Creates a new ContextBindingElement object initialized from the current one.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
ExportPolicy(MetadataExporter, PolicyConversionContext) ExportPolicy(MetadataExporter, PolicyConversionContext) ExportPolicy(MetadataExporter, PolicyConversionContext) ExportPolicy(MetadataExporter, PolicyConversionContext)

Scrive asserzioni di criteri personalizzate nel contesto dell'elemento di associazione.Writes custom policy assertions into the context of the binding element.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetProperty<T>(BindingContext) GetProperty<T>(BindingContext) GetProperty<T>(BindingContext) GetProperty<T>(BindingContext)

Restituisce l'oggetto tipizzato con il contesto specificato dal livello appropriato nello stack dei canali.Returns the typed object with the specified context from the appropriate layer in the channel stack.

GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Si applica a