ReliableSessionBindingElement ReliableSessionBindingElement ReliableSessionBindingElement ReliableSessionBindingElement Class

Définition

Représente l'élément de liaison qui peut produire les canaux d'émission et de réception requis pour une session fiable entre des points de terminaison.Represents the binding element that can produce the sending and receiving channels required for a reliable session between endpoints.

public ref class ReliableSessionBindingElement sealed : System::ServiceModel::Channels::BindingElement, System::ServiceModel::Description::IPolicyExportExtension
public sealed class ReliableSessionBindingElement : System.ServiceModel.Channels.BindingElement, System.ServiceModel.Description.IPolicyExportExtension
type ReliableSessionBindingElement = class
    inherit BindingElement
    interface IPolicyExportExtension
Public NotInheritable Class ReliableSessionBindingElement
Inherits BindingElement
Implements IPolicyExportExtension
Héritage
ReliableSessionBindingElementReliableSessionBindingElementReliableSessionBindingElementReliableSessionBindingElement
Implémente

Exemples

ReliableSessionBindingElement peut être ajouté à toute liaison personnalisée.The ReliableSessionBindingElement can be added to any custom binding. Cet ajout est effectué à l'aide des éléments de configuration suivants.This is done using the following configuration elements.

<bindings>  
    <customBinding>  
        <binding configurationName="ReliabilityHTTP">  
            <reliableSession/>  
        </binding>  
    </customBinding>  
</bindings>  

L'exemple de code suivant indique comment utiliser ReliableSessionBindingElement dans le code.The following sample code demonstrates how to use ReliableSessionBindingElement in code.

Uri baseAddress = new Uri("http://localhost:8000/servicemodelsamples/service");

// Create a ServiceHost for the CalculatorService type and provide the base address.
using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress))
{
    // Create a custom binding that contains two binding elements.
    ReliableSessionBindingElement reliableSession = new ReliableSessionBindingElement();
    reliableSession.Ordered = true;

    HttpTransportBindingElement httpTransport = new HttpTransportBindingElement();
    httpTransport.AuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
    httpTransport.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;

    CustomBinding binding = new CustomBinding(reliableSession, httpTransport);

    // Add an endpoint using that binding.
    serviceHost.AddServiceEndpoint(typeof(ICalculator), binding, "");

    // Add a MEX endpoint.
    ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
    smb.HttpGetEnabled = true;
    smb.HttpGetUrl = new Uri("http://localhost:8001/servicemodelsamples");
    serviceHost.Description.Behaviors.Add(smb);
  
    // Open the ServiceHostBase to create listeners and start listening for messages.
    serviceHost.Open();

    // The service can now be accessed.
    Console.WriteLine("The service is ready.");
    Console.WriteLine("Press <ENTER> to terminate service.");
    Console.WriteLine();
    Console.ReadLine();

    // Close the ServiceHostBase to shutdown the service.
    serviceHost.Close();
}
Dim baseAddress As New Uri("http://localhost:8000/servicemodelsamples/service")

' Create a ServiceHost for the CalculatorService type and provide the base address.
Using serviceHost As New ServiceHost(GetType(CalculatorService), baseAddress)
	' Create a custom binding that contains two binding elements.
	Dim reliableSession As New ReliableSessionBindingElement()
	reliableSession.Ordered = True

	Dim httpTransport As New HttpTransportBindingElement()
	httpTransport.AuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous
	httpTransport.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard

	Dim binding As New CustomBinding(reliableSession, httpTransport)

	' Add an endpoint using that binding.
	serviceHost.AddServiceEndpoint(GetType(ICalculator), binding, "")

	' Add a MEX endpoint.
	Dim smb As New ServiceMetadataBehavior()
	smb.HttpGetEnabled = True
	smb.HttpGetUrl = New Uri("http://localhost:8001/servicemodelsamples")
	serviceHost.Description.Behaviors.Add(smb)

	' Open the ServiceHostBase to create listeners and start listening for messages.
	serviceHost.Open()

	' The service can now be accessed.
	Console.WriteLine("The service is ready.")
	Console.WriteLine("Press <ENTER> to terminate service.")
	Console.WriteLine()
	Console.ReadLine()

	' Close the ServiceHostBase to shutdown the service.
	serviceHost.Close()
End Using

Remarques

Fournit des sessions et assure en option la remise de messages demandée.Provides sessions and optionally provides ordered message delivery. Cette session implémentée peut croiser des intermédiaires SOAP et de transport.This implemented session can cross SOAP and transport intermediaries.

Chaque élément de liaison représente une étape de traitement lors de l’envoi ou de la réception des messages.Each binding element represents a processing step when sending or receiving messages. Au moment de l’exécution, les éléments de liaison créent les fabrications de canal et les écouteurs nécessaires pour générer les piles de canaux sortants et entrants requis pour envoyer et recevoir des messages.At runtime, binding elements create the channel factories and listeners that are necessary to build outgoing and incoming channel stacks required to send and receive messages. Le ReliableSessionBindingElement fournit une couche facultative dans la pile capable d'établir une session fiable entre des points de terminaison et de configurer le comportement de cette session.The ReliableSessionBindingElement provides an optional layer in the stack that can establish a reliable session between endpoints and configure the behavior of this session.

ReliableSessionBindingElement est fourni sur les liaisons standards dans le tableau suivant.The ReliableSessionBindingElement is provided on the standard bindings in the following table.

LiaisonBinding Par défautDefault
NetTcpBinding OffOff
WSHttpBinding OffOff
WSDualHttpBinding Activé (obligatoire)On (required)

Constructeurs

ReliableSessionBindingElement() ReliableSessionBindingElement() ReliableSessionBindingElement() ReliableSessionBindingElement()

Initialise une nouvelle instance de la classe ReliableSessionBindingElement.Initializes a new instance of the ReliableSessionBindingElement class.

ReliableSessionBindingElement(Boolean) ReliableSessionBindingElement(Boolean) ReliableSessionBindingElement(Boolean) ReliableSessionBindingElement(Boolean)

Initialise une nouvelle instance de la classe ReliableSessionBindingElement qui spécifie si la remise des messages doit conserver l'ordre dans lequel les messages sont envoyés.Initializes a new instance of the ReliableSessionBindingElement class that specifies whether message delivery must preserve the order in which messages are sent.

Propriétés

AcknowledgementInterval AcknowledgementInterval AcknowledgementInterval AcknowledgementInterval

Obtient ou définit l'intervalle d'attente d'une destination avant l'envoi d'un accusé de réception à la source de message sur les canaux fiables créés par la fabrique.Gets or sets the interval of time that a destination waits before sending an acknowledgment to the message source on reliable channels that are created by the factory.

FlowControlEnabled FlowControlEnabled FlowControlEnabled FlowControlEnabled

Obtient ou définit une valeur indiquant si le contrôle de flux est activé pour la session fiable.Gets or sets a value that indicates whether the reliable session has flow control enabled.

InactivityTimeout InactivityTimeout InactivityTimeout InactivityTimeout

Obtient ou définit un intervalle de temps pendant lequel un service reste inactif avant sa fermeture.Gets or sets an interval of time that a service remains inactive before closing.

MaxPendingChannels MaxPendingChannels MaxPendingChannels MaxPendingChannels

Obtient ou définit le nombre maximal de canaux qui peuvent rester en attente dans une même session fiable.Gets or sets the largest number of channels that can be pending during the reliable session.

MaxRetryCount MaxRetryCount MaxRetryCount MaxRetryCount

Obtient ou définit le nombre maximal des tentatives de transfert d'un message pendant la session fiable.Gets or sets the maximum number of times that a message attempts to be transferred during the reliable session.

MaxTransferWindowSize MaxTransferWindowSize MaxTransferWindowSize MaxTransferWindowSize

Obtient ou définit le plus grand nombre de messages qui peuvent exister dans la mémoire tampon d'envoi ou de réception.Gets or sets the largest number of messages that can exist in either the send buffer or the receive buffer.

Ordered Ordered Ordered Ordered

Obtient ou définit une valeur qui indique si la remise des messages doit se faire dans l'ordre d'envoi des messages.Gets or sets a value that indicates whether message delivery must preserve the order in which messages are sent.

ReliableMessagingVersion ReliableMessagingVersion ReliableMessagingVersion ReliableMessagingVersion

Obtient ou définit la version de WS-ReliableMessaging spécifiée par l'élément de liaison.Gets or sets the version of WS-ReliableMessaging specified by the binding element.

Méthodes

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

Retourne une fabrique qui crée un canal d'un type spécifié prenant en charge une session fiable.Returns a factory that creates a channel of a specified type that supports a reliable session.

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

Retourne un écouteur qui accepte un canal d'un type spécifié prenant en charge une session fiable.Returns a listener that accepts a channel of a specified type that supports a reliable session.

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

Retourne une valeur qui indique si la fabrique de canal peut être construite pour le canal et le contexte fournis qui prennent en charge une session fiable.Returns a value that indicates whether the channel factory can be built for the channel and context provided that can support a reliable session.

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

Retourne une valeur qui indique si l'écouteur de canal peut être construit pour le canal et le contexte fournis qui prennent en charge une session fiable.Returns a value that indicates whether the channel listener can be built for the channel and context provided that can support a reliable session.

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

Crée une copie de l’élément de liaison de session fiable actuel.Creates a copy of the current reliable session binding element.

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

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

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

Obtient une propriété du type spécifié à partir de son contexte de liaison.Gets a property of the specified type from its binding context.

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

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

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

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

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

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Inherited from Object)

Implémentations d’interfaces explicites

IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext) IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext) IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext) IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext)

Mappe les informations contenues dans l'élément de liaison de session fiable dans les éléments WSDL qui permettent à un point de terminaison distant d'accéder au service avec une session fiable.Maps the information contained in the reliable session binding element into the WSDL elements that enable a remote endpoint to access the service with a reliable session.

S’applique à