begin process at 2012 02 11 11:30:22
  Trouver un code source :
 
dans
 
Accueil > 

Tutoriels

 > 

Tutoriaux

 > [.NET3/WCF] 1IERE APPROCHE - CONSTRUCTION D'UN SERVICE WCF

[.NET3/WCF] 1IERE APPROCHE - CONSTRUCTION D'UN SERVICE WCF


 Information sur le tutoriel

Note :
Aucune note


 Description

Ce tutorial explique pas à pas les différentes étapes de constructions d'un service WCF hébergé pas IIS.

Un second tutorial sera mis à disposition très prochainement et sera accompagné de la source complète (service WCF + client) prise pour cette démo.

Bon service :)

-----------------------------------------
Version PDF: http://www.perfecttoolsxp.net/Tutos/DemoWCF_01/Article/WCF_approche_srv.pdf
Second tutorial: http://www.csharpfr.com/tutoriaux/NET3-WCF-1IERE-APPROCHE-CONSTRUCTION-CLIENT-WCF_747.aspx
Source complète: http://www.csharpfr.com/codes/NET3-WCF-DEMO-SERVICE-CLIENT-WCF_44226.aspx

Tutorial

WINDOWS COMMUNICATION FUNDATION - PREMIERE APPROCHE

Construction du s ervice WCF


Le service fournira les opérations suivantes pour notre application cliente que nous verrons dans le second tutorial .

  • Obtenir des informations sur un membre de Codes-Sources.
  • Lister les membres de Codes-Sources .
  • Supprimer un membre.
  • Créer un nouveau membre.
  • Simple addition entre deux nombres.

A présent passons à la création de notre service WCF. Créer un nouveau projet de type « WCF Service Library ».



Définir les contrat s .


La structure d'un service WCF s'appui sur deux types de contrats, un contrat de données et un contrat de service.

  • Un contrat de données : Il définit le format des données d' un objet métier (classe) / structure / énumération qui sera é changé entre le service et le client. Il est définit par l'attribut [ DataContract ] et ses membres marqués de l'attribut [ DataMember ] . (Si un membre n'est pas balisé [ DataMember ] il ne sera pas sérialisé dans le flux XML qui sera échangé entre le service et le client) .
  • Un contrat de service : Interface qui définit les méthodes ( = opérations) que le service WCF va exposer au x client s . Il est définit par l'attribut [ ServiceContract ] et ses membres marqués de l'attribut [ OperationContract ] .

Maintenant que les présentations sont faîtes, n ous allons définir notre seul contrat de données pour un objet MembreCS . Créons une classe MembreCS avec les membres le caractérisant comme ci-dessous .

Une fois le contrat de données définit sur notre objet MembreCS nous allons pouvoir écrire le contrat de service de notre service WCF. Créez une interface que vous appellerez I DemoW CFService avec les signatures des méthodes comme ci-dessous.



Mise en œuvre du service WCF


Après avoir spécifié la structure des données à notre service avec un Contrat de Données et définit les opérations qui seront exposées par le service à l'aide d'un Contrat de Service , la prochaine étape va être tout simplement d ' écrire le code de no s méthodes exposées (opérations) en mettant en œuvre le Contrat de Service (implémentation de l'interface IDemoWCFService ).

Pour cela créons une nouvelle classe DemoService sous le contrat de service IDemoWCFService comme ci-dessous.

  • Méthode ListeMembre s

  • Méthode DetailsMembr e

Je passe sur le s autres méthodes que vous retrouvez bien évidement dans la source associé e à ce tutorial ..



Hébergement du service


Pour pouvoir exécute r le service WCF et le rendre accessible aux clients nous devons l'héberger soit dans une application dîtes Hôte, service Windows ou par IIS. Pour cette démonstration l e service sera hébergé par IIS.

  • Ajouter un fichier de définition de service (. svc ) qui va spécifier le nom de la classe que va exécuter IIS ainsi que le nom de l'assemblage qui renferme cette classe.
  • Créer un fichier « Web.config » en y ajoutant des informations dit de liaisons nécessaire à IIS. En effet ces informations vont indiquer comment un client doit communiquer avec le service WCF.
  • Déployer le service WCF vers IIS.

Et c'est parti, ajouter un nouvel élément de type Fichier texte portant le même nom que le service WCF « DemoWCFService »

Comme décrit dans la définition de la première étape nous allons spécifier le nom de la classe et de la l' assemblage qui la renferme. Ajouter les lignes suivantes dans le fichier DemoWCFService.svc.

Passons maintenant à la seconde étape, le fichier Web.config .

Examinons ensemble la section < system.serviceModel >

<!--Contient les informations de configuration d'un service WCF.-->

<system.serviceModel>

<!--Contient les détails de chaque service mis en oeuvre.-->

<services>

<!--Détail sur notre unique service.-->

<!--Elément name: Spécifie l'espace de noms et la classe mettant en oeuvre notre unique service.-->

< service name ="DemoWCFService.DemoService" behaviorConfiguration ="DemoServiceBehavior">

<!--Elément endpoint: Sans entrer dans les détails, il s'agit de l'élément qui fournit

aux applis. clientes les infos dont elles ont besoin pour communiquer avec

notre service DemoService.-->

< endpoint address ="" binding ="basicHttpBinding" contract ="DemoWCFService.IDemoWCFService" />

</service>

</services>


Dans l a section < behaviors > j e vais active r la pub lication des métadonnées (du Contrat de Service) ce qui va permettre par la suite aux utilisateurs d'obtenir ces métadonnées en émettant une requê t e au service WC F de type HttpGet et ainsi retrouver un wsdl classique de WebService .

Il nous reste plus qu'à présent à déployer vers IIS notre service WCF (Je pars du principe que IIS est déjà activé et configuré) . Dans IIS ajouter un nouveau répertoire virtuel dans « Site Web par Défaut » et pointer le vers la racine de la solution du service WCF (Voir ci-dessous) .

Le service est maintenant hébergé par IIS est prêt à être consommer par des applications clientes.


Test du déploiement du service WCF


Dernière partie de ce tutorial, le test de notre service WCF. Pour ce faire rien de plus simple, ouvrez votre navigateur Internet et saisissez l'adresse du service. http://localhost/DemoWCFService/DemoWCFService.svc

PS: http://localhost/DemoWCFService/DemoWCFService.svc ?wsdl pour voir afficher les métadonnées du Contrat de Service.

 Historique

27 septembre 2007 18:04:56 :
Version PDF
29 septembre 2007 00:55:01 :
Ajout lien second tuto + lien source complète

Commentaires

Commentaire de teddyalbina le 15/02/2008 13:48:49

Très bon tuto simple et claire.

Commentaire de marik7335 le 27/09/2008 13:43:09

Merci pour ton tuto. ça va beaucoup m'aider.

Commentaire de marik7335 le 27/09/2008 13:43:47

ça mérite une bonne note.

Commentaire de amalrochd le 14/12/2008 17:37:43

merci bocou, ton tuto est très interessant

Commentaire de Kaneda Shotaro le 08/02/2009 18:05:05

Lorsque je vais sur le fichier svc depuis le navigateur, je tombe sur une page "The page cannot be found" alors que je peux aller à la racine du répertoire si je ne tape que http://localhost/DemoWCFService
J'utilise IIS 6 sur Windows Server 2003

Commentaire de Vilma le 14/01/2012 00:22:51


c'est à la fois simple et claire!!
Un grand Merci Willi!!

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,250 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales