Partager via


Comment : échanger des messages au sein d'une session fiable

Cette rubrique décrit les étapes requises pour activer une session fiable utilisant l'une des liaisons fournies par le système qui prennent en charge une telle session, mais pas par défaut. Vous pouvez activer la session fiable soit de façon impérative en utilisant le code, soit de façon déclarative dans le fichier de configuration. Cette procédure utilise les fichiers de configuration du client et du service pour activer la session fiable et pour stipuler que les messages arrivent dans le même ordre dans lequel ils ont été envoyés.

La partie clé de cette procédure est que l'élément de configuration de point de terminaison contient un attribut bindingConfiguration qui référence une configuration de liaison nommé "Binding1". L'élément de configuration <binding> peut référencer ensuite ce nom pour activer des sessions fiables en affectant à l'attribut enabled de l'élément reliableSession la valeur true. Vous spécifiez les assurances de remise ordonnée pour la session fiable en affectant à l'attribut ordered la valeur true.

Pour la copie source de cet exemple, consultez WS Reliable Session.

Pour configurer le service avec une liaison WSHttpBinding afin d'utiliser une session fiable

  1. Définissez un contrat de service pour le type de service.

  2. Implémentez le contrat de service dans une classe de service. Notez que l'adresse ou les informations de liaison ne sont pas spécifiées dans l'implémentation du service. Par ailleurs, il n'est pas nécessaire d'écrire du code pour récupérer ces informations à partir du fichier de configuration.

  3. Créez un fichier Web.config pour configurer un point de terminaison pour CalculatorService qui utilise WSHttpBinding avec la session fiable activée et la remise ordonnée des messages requise.

  4. Créez un fichier Service.svc qui contient la ligne :

    <%@ServiceHost language=c# Service="CalculatorService" %> 
    
  5. Placez le fichier Service.svc dans votre répertoire virtuel IIS (Internet Information Services).

Pour configurer le client avec une liaison WSHttpBinding afin d'utiliser une session fiable

  1. Utilisez ServiceModel Metadata Utility Tool (Svcutil.exe) à partir de la ligne de commande pour générer le code à partir des métadonnées du service :

    Svcutil.exe <service's Metadata Exchange (MEX) address or HTTP GET address> 
    
  2. Le client généré contient l'interface ICalculator qui définit le contrat de service que l'implémentation du client doit satisfaire.

  3. L'application cliente générée contient également l'implémentation de ClientCalculator. Notez que les informations d'adresse et de liaison ne sont pas spécifiées n'importe où dans l'implémentation du service. Par ailleurs, il n'est pas nécessaire d'écrire du code pour récupérer ces informations à partir du fichier de configuration.

  4. Svcutil.exe génère également la configuration du client qui utilise la classe WSHttpBinding. Ce fichier doit être nommé dans le fichier App.config lors de l'utilisation de Visual Studio.

  5. Créez une instance ClientCalculator dans une application, puis appelez les opérations de service.

  6. Compilez, puis exécutez le client.

Exemple

Plusieurs liaisons fournies par le système prennent en charge des sessions fiables par défaut. Elles incluent :

Pour un exemple de création d'une liaison personnalisée prenant en charge les sessions fiables, consultez Comment : créer une liaison de session fiable personnalisée à l'aide de HTTPS.

Voir aussi

Autres ressources

Sessions fiables