Archive

Posts Tagged ‘IIS’

Gérer les évènements de la classe ServiceHost sous IIS et WAS

Pour héberger un service web WCF sous IIS ou sous WAS, nous sommes obligés de passer par un fichier portant l’extension .svc et d’utiliser la directive @ServiceHost. Par exemple pour héberger le service WCFLibrary.Service, la directive ressemblera à ceci :
Ceci est la syntaxe de base et ne nous permet pas de savoir à quel moment notre service est ouvert ou fermé (le service peut être fermé par IIS parce que le recyclage est en train de s’effectuer).

Pour pouvoir gérer ces deux évènements (Openned et Closed) nous devons créer une classe que je nomme MyServiceHostFactory et cette classe doit dériver de ServiceHostFactory.

Après la définition la classe nous allons changer la directive de notre fichier *.svc, en y ajoutant l’attribut Factory et nous lui assignes le type MyServiceHostFactory :

L’activation du service s’effectue une fois dès la première requête reçue par le service WCF et après chaque recyclage de IIS. Donc du coup il se peut que l’évènement Opened par exemple soit déclenché plusieurs fois durant toute la durée d’exécution de ton serveur IIS.

J’espère que ce billet vous a aidé.

Catégories :WCF Étiquettes : , , ,
%d blogueurs aiment cette page :