ContextBindingElement Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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.
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à
- Implementazioni
Commenti
ContextBindingElement consente all'utente di aggiungere un elemento all'associazione di un servizio per la gestione del protocollo di scambio del contesto. ContextBindingElement è in genere basata su elementi di associazione di affidabilità, di sicurezza e di trasporto. ContextBindingElement non richiede opzioni di configurazione e può creare channel factory per IRequestChannel, IRequestSessionChannele IDuplexSessionChannel. Può inoltre creare listener del canale per IReplyChannel, IReplySessionChannel e IDuplexSessionChannel. Un canale di contesto non modifica l'interfaccia del canale: lo stack di canali sottostanti deve supportare la forma del canale richiesta e la funzionalità sessione.
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.
Nota
Se viene creata un'associazione basata su sessione con un oggetto e usata con un ContextBindingElement contratto che specificaNotAllowedSessionMode = , InvalidOperationException viene generata una volta creato il canale con il testo seguente: "La gestione del contesto del canale non può essere abilitata o disabilitata dopo l'apertura del canale". È necessario impostare SessionModeAllowed o Required non usare un canale basato su sessione.
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à. In caso contrario, il servizio può generare una classe ProtocolException con il messaggio seguente:
"Il canale del contesto ha ricevuto un messaggio con contesto che non corrisponde al contesto corrente memorizzato nella cache sul canale. 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."
Costruttori
ContextBindingElement() |
Inizializza una nuova istanza della classe ContextBindingElement. |
ContextBindingElement(ProtectionLevel) |
Inizializza una nuova istanza della classe ContextBindingElement con un livello di protezione specificato. |
ContextBindingElement(ProtectionLevel, ContextExchangeMechanism) |
Inizializza una nuova istanza della classe ContextBindingElement con un livello di protezione e un meccanismo di scambio specificati. |
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. |
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. |
Proprietà
ClientCallbackAddress |
Ottiene o imposta l'indirizzo di callback del client per l'elemento di associazione. |
ContextExchangeMechanism |
Ottiene o imposta il meccanismo di scambio utilizzato per comunicare contesto per l'elemento di associazione. |
ContextManagementEnabled |
Ottiene o imposta un valore che specifica se la gestione del contesto è abilitata. |
ProtectionLevel |
Ottiene o imposta il livello di protezione per l'elemento di associazione dal contesto. |
Metodi
BuildChannelFactory<TChannel>(BindingContext) |
Compila lo stack della channel factory nel client che crea un tipo di canale specificato per un contesto specificato. |
BuildChannelListener<TChannel>(BindingContext) |
Compila lo stack del listener del canale nel client che accetta un tipo di canale specificato per un contesto specificato. |
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. |
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. |
Clone() |
Crea un nuovo oggetto ContextBindingElement inizializzato da quello corrente. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
ExportPolicy(MetadataExporter, PolicyConversionContext) |
Scrive asserzioni di criteri personalizzate nel contesto dell'elemento di associazione. |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetProperty<T>(BindingContext) |
Restituisce l'oggetto tipizzato con il contesto specificato dal livello appropriato nello stack dei canali. |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |