Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Tutoriel web service
1. Tutoriel :
Web services avec .Net (version 2008)
My Abdelouahed Sabri
abdelouahed.sabri@gmail.com
Sommaire
I. INTRODUCTION.......................................................................................................................1
II. SERVICE WEB...........................................................................................................................1
III. UTILISATION DU SERVICE WEB ........................................................................................2
IV. WINDOWS COMMUNICATION FOUNDATION (WCF)...................................................3
IV.1. CREATION DU SERVICE .........................................................................................................3
IV.2. UTILISATION DU SERVICE .....................................................................................................4
V. TODO ...........................................................................................................................................4
2. .NET Tutoriel : Web Services
Page 1/4
I. Introduction
Un service web est un programme informatique orienté web qui permet la communication et
l'échange de données entre applications (systèmes) hétérogènes dans des environnements
distribués. Se sont des fonctionnalités disponibles sur un réseau (internet ou intranet), par et
pour des applications ou machines, de manière synchrone ou asynchrone. Pour le cas des
services web proposés par Visual Studio .NET le protocole de communication est défini dans
le cadre de la norme SOAP (Simple Object Access Protocol). Les échanges sont sous format
XML.
Pour réaliser cet atelier, il faut avoir en plus de Visual studio il faut installer et configurer le
serveur Web IIS (Internet Information Server). Ici la version VS utilisée est 2008.
II. Service Web
Avec .NET, la création d’un service Web est une tâche très facile. Ainsi, il faut le créer, le
publier dans IIS et l’utiliser d’une application tierce.
Commencer par créer un nouveau projet VS.NET de type « Application de service Web
ASP.NET ». Automatiquement, un projet Web service sera crée avec un code auto-généré avec
une méthode créée par défaut nommée « HelloWorld » et par défaut le nom de la classe est
« Service1 »
Toutes les méthodes proposées par le service (accessibles de l’extérieur) doivent être
signalées avec l’attribut [WebMethod].
Noter bien qu’il y d’autres étiquettes ; Namespace, ConformsTo, ScriptService qu’on peut
utiliser et modifier. Le « Namespace » qui est une chaine de caractères et par défaut égale à
"http://tempuri.org/". pour le déploiement du web service, il faut changer cette valeur est la
mettre par préférence égale à l’URI du site web hébergeant le service
Ajouter les méthodes suivantes
[WebMethod]
public int Addition (int a, int b)
{
return(a + b);
}
[WebMethod]
public float Soustraction (float A, float B)
{
3. .NET Tutoriel : Web Services
Page 2/4
return (A - B);
}
[WebMethod]
public System.Single Multiplication (System.Single A, System.Single B)
{
return A * B;
}
[WebMethod]
public System.Single Division (System.Single A, System.Single B)
{
if(B == 0)
return -1;
return Convert.ToSingle(A / B);
}
Réflexion : Pourquoi nous avons utilisé le type « Single » alors qu’on peut utiliser le type
« float ».
Compiler le code et exécuter le pour tester. Si tout se passe bien le résultat d’exécution sera une
page Web « Service1.asmx » de test listant les opérations (méthodes) qui sont proposées par le
service. En cliquant sur une des méthodes, une page pour tester de cette méthode sera lancée.
III. Utilisation du Service Web
Cette partie présente comment utiliser un service web à partir d’une application Console.
- Commencer par la création d’un projet VS.NET de type Console.
- Ajouter une référence au service web déjà crée : Cliquer bouton droit sur « L’explorateur
de solution » et cliquer « ajouter une référence Web »
- Ajouter le service Web déjà crée dans la première partie en utilisant le lien web vers la
page « *.asmx » : http://localhost:50209/Service1.asmx
- Donner un nom à la référence ; par défaut c’est « localhost» et cliquer « Ajouter la
référence »
- Si tout se passe bien, la référence sera ajoutée dans l’explorateur de solution sous « Web
References »
- Ajouter votre référence au code C# avec using
nomDuProjetConsole.NomDeRéférenceWeb ». ou bien vous pouvez utiliser le lien
direct dans votre code pour accéder aux classes du Web Service (Voir code ci-dessous).
Après, les méthodes du Service Web sont maintenant disponibles pour l’utilisation
using System;
using System.Collections.Generic;
using System.Linq;
4. .NET Tutoriel : Web Services
Page 3/4
using System.Text;
using TestWebServ.MonWebService;
namespace TestWebServ
{
class Program
{
static void Main(string[] args)
{
Service1 s = new Service1();
Console.WriteLine(s. Addition(5, 2).ToString());
}
}
}
IV. Windows Communication Foundation (WCF)
WCF est une technologie qui permet de faciliter la mise en place des applications distribuées en
servant de support d’échange commun aux architectures orientées services (SOA : Service
Oriented Architecture). L’essentielle caractéristique de WCF est sont Interopérabilité
permettant une grande disponibilité et souplesse pour créer et utiliser (consommer) les Web
Services. WCF est apparue en 2007 comme une extension du Framework .net 2.0.
Comme les Web service basés sur ASP.NET les WCF utilisent trois types de
métadonnées sous forme de contrat d’utilisation ;
- ServiceContract : pour définir (indiquer) que la classe ou l’interface qui lui est attachée
est un contrat service (accessible comme étant un service)
- OperationContract : pour indiquer qu’une méthode d’une classe sera exposée (proposée)
au travers du service Web.
- DataMember : attribut qui placer avant les propriétés des classes pour définir les objets
qui seront passés (en paramètre ou en retour) au travers du service Web.
IV.1. Création du service
Deux possibilités sont offertes pour créer un service WCF sous VS.NET ; 1) créer un projet de
type « WCF Service Application » ou 2) un projet de type « WCF Service Library ».
1- WCF Service Application : deux fichiers (orientés service) sont crées par défaut une
interface « IService.cs » qui contient les signatures du « ServiceContract »,
« OperationContract » et « DataContract ». et le service « Service1.svc.cs » pour
implémenter les « OperationContract »
5. .NET Tutoriel : Web Services
Page 4/4
2- WCF Service Library : « IService.cs » qui contient les signatures du « ServiceContract »,
« OperationContract » et « DataContract ». et le service « Service1.cs » pour implémenter
les « OperationContract »
Dans le cas d’un service de type Library, vous pouvez le tester en utilisant le « WCF Test
Client ». Après exécution, il est possible de choisir la méthode (OperationContract) à tester,
modifier les valeurs des paramètres d’entrer et cliquer le bouton « Invoke » (appeler)
IV.2. Utilisation du service
L’utilisation d’un service Web WCF est pareil que le service ASP.NET.
- Pour le cas d’un service « WCF Test Client » l’adresse (URI) qui sera utilisée est celle
vers le fichier « Service1.svc.cs » récupérable après exécution du service
- Pour le cas d’un service « WCF Service Library » l’adresse (URI) qui sera utilisée est celle
vers le fichier « Service1.cs » récupérable après exécution du « WCF Test Client ».
V. ToDO
Créer un Service Web permettant de manipuler (CRUD, Créer, Lister, mètre-à-jour, et
Supprimer) les données dans une base de données et l’utiliser à partir d’une application
Windows Forms.