Condividi tramite


EndpointDispatcher Classe

Definizione

Rappresenta l'oggetto runtime che espone le proprietà che consentono di inserire estensioni o modifiche della fase di esecuzione per i messaggi delle applicazioni di servizio.

public ref class EndpointDispatcher
public ref class EndpointDispatcher sealed
public class EndpointDispatcher
public sealed class EndpointDispatcher
type EndpointDispatcher = class
Public Class EndpointDispatcher
Public NotInheritable Class EndpointDispatcher
Ereditarietà
EndpointDispatcher

Esempio

L'esempio di codice seguente illustra come utilizzare la classe EndpointDispatcher per individuare System.ServiceModel.Dispatcher.DispatchRuntime dell'endpoint e inserisce un controllo messaggi personalizzato utilizzando un comportamento dell'endpoint.

// IEndpointBehavior Members
public void AddBindingParameters(ServiceEndpoint serviceEndpoint, System.ServiceModel.Channels.BindingParameterCollection bindingParameters)
{
  return;
}

public void ApplyClientBehavior(ServiceEndpoint serviceEndpoint, ClientRuntime behavior)
{
  behavior.MessageInspectors.Add(new EndpointBehaviorMessageInspector());
}

public void ApplyDispatchBehavior(ServiceEndpoint serviceEndpoint, EndpointDispatcher endpointDispatcher)
{
  endpointDispatcher.DispatchRuntime.MessageInspectors.Add(new EndpointBehaviorMessageInspector());
}

public void Validate(ServiceEndpoint serviceEndpoint)
{
  return;
}

Commenti

Le classi EndpointDispatcher e System.ServiceModel.Dispatcher.DispatchRuntime che espongono i punti di personalizzazione della fase di esecuzione per gli endpoint di un servizio. La classe EndpointDispatcher può essere utilizzata per controllare quali messaggi possono essere elaborati e alcune informazioni relative all'endpoint. La classe DispatchRuntime è dotata di molte proprietà utilizzate per inserire estensioni personalizzate nella fase di esecuzione dell'endpoint.

L'oggetto EndpointDispatcher è responsabile per l'elaborazione dei messaggi provenienti da una classe System.ServiceModel.Dispatcher.ChannelDispatcher quando l'indirizzo di destinazione di un messaggio corrisponde alla proprietà AddressFilter e l'azione del messaggio corrisponde alla proprietà ContractFilter. Se due oggetti EndpointDispatcher possono accettare un messaggio, il valore della proprietà FilterPriority determina l'endpoint con la priorità più elevata.

Utilizzare l'oggetto EndpointDispatcher per configurare o estendere la ricezione dei messaggi dalla classe ChannelDispatcher associata, la conversione degli oggetti messaggio in oggetti utilizzati come parametri e la procedura di richiamo di un'operazione dell'endpoint e della procedura inversa.

In genere, la classe EndpointDispatcher per un endpoint si ottiene implementando l'interfaccia IEndpointBehavior, ma è possibile accedere a EndpointDispatcher anche dalle altre interfacce di comportamento.

È possibile utilizzare le seguenti proprietà EndpointDispatcher:

Costruttori

EndpointDispatcher(EndpointAddress, String, String)

Inizializza una nuova istanza della classe EndpointDispatcher con l'indirizzo, il nome del contratto e lo spazio dei nomi del contratto specificati.

EndpointDispatcher(EndpointAddress, String, String, Boolean)

Inizializza una nuova istanza della classe EndpointDispatcher con l'indirizzo specificato, nome del contratto, spazio dei nomi del contratto e se l'endpoint è un endpoint di sistema pubblico.

Proprietà

AddressFilter

Ottiene o imposta un oggetto MessageFilter utilizzato per identificare se un messaggio specifico è destinato all'indirizzo dell'endpoint.

ChannelDispatcher

Ottiene l'oggetto ChannelDispatcher associato, da usare per controllare o modificare altri valori e comportamenti relativi al canale.

ContractFilter

Ottiene o imposta l'oggetto MessageFilter da utilizzare per identificare se un messaggio è destinato al contratto specifico.

ContractName

Ottiene il nome del contratto dell'endpoint.

ContractNamespace

Ottiene lo spazio dei nomi del contratto dell'endpoint.

DispatchRuntime

Ottiene l'oggetto DispatchRuntime utilizzato per controllare, modificare o estendere il comportamento della fase di esecuzione in un endpoint del servizio o in un endpoint di callback client.

EndpointAddress

Ottiene l'indirizzo dell'endpoint.

FilterPriority

Ottiene o imposta la priorità di ContractFilter e della combinazione AddressFilter quando ChannelDispatcher seleziona gli endpoint.

IsSystemEndpoint

Ottiene un valore che indica se l'endpoint è stato creato internamente dal server e non dall'utente.

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
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)

Si applica a