IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Communication Foundation .NET Discussion :

Consommer un service WCF avec Windows 8 Metro


Sujet :

Windows Communication Foundation .NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 58
    Points : 35
    Points
    35
    Par défaut Consommer un service WCF avec Windows 8 Metro
    Bonjour, j'ai besoin de communiquer avec un service WCF depuis une application
    METRO C# xaml.

    Le problème que je rencontre est que je n'ai pas d'autres choix visiblement que de récupérer mes méthodes en asynchrone (il rajoute async automatiquement a la fin de mes méthodes) ... Problème de configuration ou obligation ?

    Dans le cas ou je suis obligé de consommer le service en asynchrone comment je dois m'y prendre ? quelqu'un peut il me présenter un exemple pour récupérer une liste d'objet.

    Merci à vous de m'aider, les ressources sont assez maigre...


    EDIT: Bon maintenant je sais que je suis obligé d'utiliser mes méthodes en asynchrone, mais je n'y comprend rien... Le peu de ressources sur le web n'est pas applicable.

    Je veux juste récupérer un objet, une liste d'objet même une chaine de caractère... je n'arrive à rien ! je me demande même si je ne dois pas refaire tout mon wcf ??

    En fait je cherche simplement à faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Service1Client wcf = new Service1Client();
    List<menu> menus = wcf.getListMenu>;
    Pour le moment j'ai essayé de rajouter await, ce qui m'a obligé à créer une méthode asynchrone, puis à utiliser les méthodes getListMenuRequest et getistMenuResponse dans cette méthode, seulement il me demande de retourner un type Task<List<menu>> et je ne sais pas l'utiliser.

    Quand je tente tout de même d'utiliser cette méthode il me répond qu'il n'y a pas de endpoint correspondant a la méthode getListMenuRequest ...

    Enfin voila j'ai bien l'impression d'être loin du but.

    bref si quelqu'un a une idée sur la question ça me remontera le morale

    Il me reste 2 jours pour finir ça et je bloque complet là dessus ...

    Merci à vous !

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 58
    Points : 35
    Points
    35
    Par défaut
    Bon, ça fait + de 2 jours que je cherche une réponse pour avancer un tout petit peu, je m'acharne et je tourne en rond je compte plus les heures juste pour consommer un service ...

    Bref même si surement personne n'arrivera à me répondre je retente ma chance.

    sur mon appli winRt (métro xaml) j'ai cette méthode :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
            private async void UserControl_Loaded(RecipeDataItem recipe)
            {
                Service1Client client = new Service1Client();
                pays opays = new pays();
                opays.libelle = "8test";
                opays.abrev = "ee";
                await client.setPaysAsync(opays);
     
     
            }

    et donc sur la dernière ligne j'ai ces erreurs :

    Erreur 5 La méthode surchargée correspondant le mieux à 'YouFood_Client.ServiceReference1.Service1Client.setPaysAsync(YouFood_Client.ServiceReference1.setPaysRequest)' possède des arguments non valides C:\Users\joel\Desktop\XAML\Final\DataModel\RecipeDataSource.cs 306 37 YouFood_Client
    Erreur 6 Argument 1 : impossible de convertir de 'YouFood_Client.ServiceReference1.pays' en 'YouFood_Client.ServiceReference1.setPaysRequest' C:\Users\joel\Desktop\XAML\Final\DataModel\RecipeDataSource.cs 306 57 YouFood_Client
    Je n'arrive ni a récupérer un simple string, ni a envoyer quelque chose.

    Pour info voici mon web.config de mon service wcf :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
      <connectionStrings>
        <add name="****Entities" connectionString="metadata=res://*/****.csdl|res://*/****.ssdl|res://*/****.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=localhost\SQLEXPRESS;initial catalog=****;integrated security=True;pooling=False;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
      </connectionStrings>
     
      <system.serviceModel>
     
        <services>
          <service name="Wcf.Service1" behaviorConfiguration="ServiceBehavior">
            <endpoint address="" binding="basicHttpBinding" contract="Wcf.IService1" />
          </service>
        </services>
     
        <behaviors>
          <serviceBehaviors>
            <behavior name="ServiceBehavior">
              <serviceMetadata httpGetEnabled="true"/>
              <serviceDebug includeExceptionDetailInFaults="false"/>
            </behavior>
          </serviceBehaviors>
        </behaviors>
        <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
      </system.serviceModel>
      <system.webServer>
        <modules runAllManagedModulesForAllRequests="true"/>
      </system.webServer>
     
    </configuration>

    et mes méthode/contrats de mon service :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
      [OperationContract]
            void setPays(plat _pays);
     
     
     
     
     
            public void setPays(pays _pays)
            {
                using (Entities contexte = new Entities())
                {
                    contexte.AddObject("pays", _pays);
                    contexte.SaveChanges();
                }
            }
    J'espère que quelqu'un a une idée sur la question car j'ai vraiment tout fait pour essayer par moi même de comprendre ...

    merci à vous

Discussions similaires

  1. [Débutant] Consommer Web Service WCF avec du JavaScript
    Par jayce23 dans le forum ASP.NET
    Réponses: 0
    Dernier message: 18/02/2014, 23h31
  2. Consommer Service WCF avec Client en Framework 1.1 ou 2.0
    Par Invité dans le forum Windows Communication Foundation
    Réponses: 11
    Dernier message: 19/03/2010, 11h51
  3. service WCF avec opérations asynchrone basée sur des evenements
    Par Yogy dans le forum Windows Communication Foundation
    Réponses: 5
    Dernier message: 10/12/2009, 19h21
  4. Réponses: 3
    Dernier message: 18/06/2009, 20h45
  5. [WCF]Service WCF avec Visual Studio 2008
    Par chiv dans le forum Windows Communication Foundation
    Réponses: 5
    Dernier message: 23/02/2008, 17h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo