[.net3/wcf] demo service-client wcf

Soyez le premier à donner votre avis sur cette source.

Vue 17 518 fois - Téléchargée 1 782 fois

Description

Bonjour,
J'ai récemment mis le nez pour la 1ière fois (et oui j'ai mis le temps...:)) dans Windows Communication Fundation (WCF) - une des briques ayant fait son apparition dans Framework .NET 3.

Séduit, je dépose ici mon premier travail sur WCF. Le but de cette démo est de construire un service WCF hébergé par IIS et une application cliente WCF consommant le service.

Pour la démo, un fichier XML contenant des informations sur quelques membres de Codes-Sources sera exploiter par le service qui fournira des opérations (vraiment simples) au client:
-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

Pour ceux qui découvrent, 2 tutoriaux accompagnent cette démo et sont disponibles en bas de page.

Source / Exemple :


///////////////////////////////
//Code de l'application cliente.
///////////////////////////////
using System;
using System.Collections.Generic;
using System.ServiceModel;
using DemoWCFClient.DemoServiceTest;

namespace DemoWCFClient
{
    class Program
    {
        static void Main(string[] args)
        {
            //Nouvelle instance du proxy et connexion au service.
            DemoWCFServiceClient proxy = new DemoWCFServiceClient("BasicHttpBinding_IDemoWCFService");

            try
            {
                //Test 1 - Obtenir la liste des membres de CS.
                List<MembreCS> lMembre = new List<MembreCS>(proxy.ListeMembres());

                foreach (MembreCS m in lMembre)
                {
                    Console.WriteLine("ID CS: {0}", m.ID);
                    Console.WriteLine("Nom: {0}", m.Nom);
                    Console.WriteLine("Prénom: {0}", m.Prenom);
                    Console.WriteLine("Pseudo: {0}", m.Pseudo);
                    Console.WriteLine("Age: {0}", m.Age);
                    Console.WriteLine("Profile: {0}", m.Profile);
                    Console.WriteLine("Admin.: {0}", m.EstAdmin);
                    Console.WriteLine("");
                }

                Console.WriteLine("");

                //Test 2 - Obtenir des informations sur un membre en particulier
                MembreCS membre2 = proxy.DetailsMembre(941);    //941 est mon ID CS

                Console.WriteLine("Information du membre ayant l'ID 941");
                Console.WriteLine("Nom: {0}", membre2.Nom);
                Console.WriteLine("Prénom: {0}", membre2.Prenom);
                Console.WriteLine("Pseudo: {0}", membre2.Pseudo);
                Console.WriteLine("Age: {0}", membre2.Age);
                Console.WriteLine("Profile: {0}", membre2.Profile);
                Console.WriteLine("Admin.: {0}", membre2.EstAdmin);
                Console.WriteLine("");

                Console.WriteLine("");

                //Test 3 - Supprimer un membre en particulier. Hum....Au hasard Nix :).
                if (proxy.SupprimerMembre(12345))
                    Console.WriteLine("Le membre avec l'ID 1 a été supprimé.");
                else
                    Console.WriteLine("Echec de la suppression du membre avec l'ID 1.");

                Console.WriteLine("");

                //Test 4 - Ajoute un nouveau membre.
                if (proxy.NouveauMembre(12345, "C_O_D_Y_X", "BotCS", "Bot", 1000, @"http://www.codes-sources.com", false))
                    Console.WriteLine("Le nouveau membre C_O_D_Y_X a été ajouté.");
                else
                    Console.WriteLine("Echec de création du nouveau membre C_O_D_Y_X.");

                Console.WriteLine("");

                //Test 5 - Simple addition.
                Console.WriteLine("Addition de 2 + 2 = {0}", proxy.Addition(2, 2));
            }
            catch (Exception ex)
            {
                Console.WriteLine("----------");
                Console.WriteLine("Exeption  survenue: {0}", ex.Message);
                Console.WriteLine("----------");
            }
            finally
            {
                //Déconexion du service.
                proxy.Close();
            }
        }
    }
}

Conclusion :


Bonne découverte à tous (enfin ceux qui n'ont jamais vu WCF en action).
Merci et bon dév ;)

Tutoriaux de cette démo.
Construction du service WCF: http://www.csharpfr.com/tutoriaux/NET3-WCF-1IERE-APPROCHE-CONSTRUCTION-SERVICE-WCF_746.aspx
Construction du client WCF: http://www.csharpfr.com/tutoriaux/NET3-WCF-1IERE-APPROCHE-CONSTRUCTION-CLIENT-WCF_747.aspx

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

benoit6315
Messages postés
89
Date d'inscription
dimanche 23 octobre 2005
Statut
Membre
Dernière intervention
12 janvier 2010
-
Impossible de telecharger le ZIP complet :'(
marik7335
Messages postés
117
Date d'inscription
samedi 27 décembre 2003
Statut
Membre
Dernière intervention
11 mai 2009
-
Très intéressant. Je te remercie pour tes sources.
cs_Willi
Messages postés
2382
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
15 -
Merci de vos commentaires :)
bidou_01
Messages postés
135
Date d'inscription
dimanche 1 octobre 2006
Statut
Membre
Dernière intervention
19 mai 2008
1 -
Moi qui n'avais jamais réussi à me mettre dans WCF, j'ai eu ici une très bonne introduction. Merci !
romagny13
Messages postés
710
Date d'inscription
lundi 10 janvier 2005
Statut
Membre
Dernière intervention
27 août 2014
2 -
Bravo pour le soin apporté

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.