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

Silverlight Discussion :

utiliser wcf depuis silverlight (ou tout autre moyen de communiquer)


Sujet :

Silverlight

  1. #1
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut utiliser wcf depuis silverlight (ou tout autre moyen de communiquer)
    bonjour

    ca fait 3 jours que je m'arrache les cheveux avec silverlight
    je viens du monde du client lourd ou copier un .exe suffit ...

    bref je veux faire un site avec quelque labels et quelques boutons, le tout lié à une base de données
    j'ai compris que le seul moyen de communiquer via silverlight est de passer par wcf pour ensuite éventuellement taper dans une base de données

    pour l'instant j'ai fait simple juste une fonction as string pour tester

    j'ai créé une solution sous vs2010 avec un projet application silverlight 3 et un autre projet que je ne sais plus de quel type il est, mais c'est un truc qui se mets dans iis (je suis sur iis de win7)
    sur ce projet web j'ai ajouté un élément "service wcf compatible silverlight"
    j'ai ensuite fais la manip sur le projet silverlight avec le bouton "découvrir" pour trouver le service dans la solution

    ca fonctionne depuis vs mais pas depuis iis
    j'ai modifié selon ce que j'ai vu sur le net, et ca marche meme plus depuis vs

    quelques lignes de code :
    silverlight :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <!--avant c'était  address="http://localhost:56859/Germain.Web/Service.svc"-->
     <endpoint address="http://localhost/Germain.Web/Service.svc"
                  binding="basicHttpBinding" bindingConfiguration="CustomBinding_Service"
                    contract="ServiceReference1.Service" name="Service" />
            </client>
    projet web :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     <service name="Service">
        <endpoint address="http://localhost/Germain.Web/Service.svc" binding="basicHttpBinding" bindingConfiguration="Service.customBinding0"
         contract="Service" />
       </service>
    avant y avait du customBinding, mais j'ai lu que seul basicHttpBinding fonctionnait alors j'ai modifié

    bref je suis perdu, j'ai jamais rien vu d'aussi compliqué ... j'ai lu des tas de choses sur le net avec des dizaines de méthodes différentes et j'en ai fait marché aucune

    donc si vous avez une solution pour cette méthode, ou même une autre méthode je suis preneur
    en gros je veux juste faire un site qui est similaire à quelques checkbox et il faut que j'enregistre l'état quelque part ...

    merci

  2. #2
    Membre expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Points : 3 958
    Points
    3 958
    Par défaut
    Un premier test :
    arrives-tu à accéder à l'URL du fichier "svc" via ton browser ?

  3. #3
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    ca n'a pas l'air

    Erreur HTTP 500.21 - Internal Server Error

    La liste de modules du gestionnaire "svc-Integrated" contient un module incorrect "ManagedPipelineHandler"


    le service et le site sont tous les 2 sur le port 80 ?

  4. #4
    Membre expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Points : 3 958
    Points
    3 958
    Par défaut
    le service et le site sont tous les 2 sur le port 80 ?
    Oui par défaut.

    Concernant l'erreur ceci est peut-être la solution :
    http://michael-arnett.spaces.live.co...0&sa=582080943

  5. #5
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    les cases à cocher sont déjà coché (j'avais tout mis pour être sur ^^)

  6. #6
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    Erreur HTTP 404.17 - Not Found

    Le contenu demandé semble être un script et ne sera pas traité par le gestionnaire de fichiers statiques.

  7. #7
    Membre expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Points : 3 958
    Points
    3 958
    Par défaut
    Avec un peu de chance tu as le même problème qu'ici :
    http://blog.rapiddg.com/2009/11/asmx...er-resolution/
    et ici :
    http://www.byteblocks.com/post/2010/...Not-Found.aspx

    Sinon il y a quelques réponses intéressantes là :
    http://forums.asp.net/p/1432329/3219236.aspx

  8. #8
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    pas mieux ...

    vraiment pas simple leur silverlight ...

  9. #9
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Points : 8 538
    Points
    8 538
    Par défaut
    Reprend depuis zéro car ta config doit être n'importe quoi maintenant.

    Voici une série d'étapes que je viens de tester à l'instant:

    Ouvrir VS 2010 en mode admin.
    Nouveau projet SL + site web associé.
    Dans le site, ajout nouvel élément, service comptatible SL.
    Clic droit sur le svc, voir dans navigateur, vérifier si ça répond.
    Dans appli SL, ajouter une service reference, pointer vers le service.
    Dans appli SL, coder pour appeler le WS.
    F5, vérifier que l'appli appelle bien le service.

    Clic doit sur le projet web, propriétés, onglet Web.
    Sélectionner utiliser le server IIS local, cliquer sur le bouton créer le répertoire virtuel (le site web par défaut dans IIS doit être activé).
    Copier l'adresse attribuée (textbox avant le bouton de création).
    Allez dans le fichier ServiceReferences.ClientConfig de l'appli SL et modifier l'adresse du WS avec celle de IIS.
    Renommer la page html ou aspx de l'appli en Default.htm ou Default.aspx (ou modifier la liste de fichiers par défaut dans IIS).

    F5 -> le navigateur affiche l'appli via le site IIS.

  10. #10
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    y a du mieux

    l'appel asynchrone retombe bien sur l'event, par contre j'ai mis un try catch dans l'event et ca me donne

    Reflection.TargetInvocationException qui dit de consulter InnerException
    et InnerException est du type
    ServiceModel.CommunicationException "Le serveur distant a retourné une erreur : NotFound"
    je continue de chercher, mais au moins en quelques lignes tu en as fait beaucoup plus que des dizaines de pages de tuto !

    edit : depuis vs ca marchait avant la modif du fichier config et maintenant depuis vs ca me parle du problème de cross domain
    j'ai pas totalement suivi ce que tu avais dit, clic droit sur le projet web, on a pas les meme menus ensuite
    j'ai créé un dossier sur le disque dur, dans iis j'ai dit que je voulais un site sur ce dossier, ca m'a demandé quelques paramètres pour le site
    j'ai essayé de mettre le nom de domaine qui pointe chez moi mais ca ne voulait pas publier (xxx.hd.free.fr) donc j'ai mis localhost
    puis publier vers IIS local
    ensuite j'ai modifié le ClientConfig, remplacé
    "http://localhost:60107/GermainSite.Web/Service.svc"
    par
    "http://localhost/Service.svc"
    edit2 : je pense comprendre que ca ne marche plus depuis vs car le site est lancé sur le serveur web de vs et que ca interroge le service de IIS et donc pas content mais pas grave ^^

    une fois que ca marchera (j'y crois encore ) je sens venir que mon site ne sera pas visible avec mon nom de domaine de free ...


    edit3:
    si j'appelle http://localhost/Service.svc depuis mon browser ca me dit
    Résumé de l'erreur
    Erreur HTTP 404.17 - Not Found

    Le contenu demandé semble être un script et ne sera pas traité par le gestionnaire de fichiers statiques.



    le code de mon service :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <OperationContract()> 
        Public Function GetText() As String
        Return "WCF OK !"
        End Function

  11. #11
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    du nouveau, inspiré de divers sites, aspnet_regiis -i mais sur le fx4

    et après avoir remis tout ce que j'avais trafiqué ca fonctionne

    un grand merci !

    je rouvrirais surement un post quelque part si comme je le pense mon site n'est pas accessible de l'extérieur ^^

  12. #12
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Points : 8 538
    Points
    8 538
    Par défaut
    Je t'ai fait une vidéo (qualité pas super mais bon...):

    http://badger.developpez.com/temp/do...lverlight.html

    J'ai remarqué que tu faisais du VB. Les options ne sont peut être pas les mêmes sous VS...

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 19
    Points : 33
    Points
    33
    Par défaut
    Bonjour,

    Je n'ai pas lu toute la discussion, mais il me semble qu'avec Silverlight il est plus intéressant d'utiliser RIA Services.

    Rakoun
    /°\

  14. #14
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    j'ai pas cherché en profondeur, mais j'ai cru comprendre que ria services s'appuie sur entity framework
    or je sais faire mes requête moi même

  15. #15
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Le problème n'est pas tant les requêtes, mais fait la gestion d'état des objets entre ton SL et ton WCF. C'est vraiment bien chiant à gérer, alors que RIA Services le fait tout seul.

  16. #16
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    je vois pas trop ce que tu veux dire par là
    je débute en silverlight et j'en fais juste un peu le week end ...

  17. #17
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Le fait de gérer l'état de l'objet (pas modifié, modifié...) entre ton SL et ton WCF. Je me souviens que lorsqu'on envoie un objet il arrive sur le serveur pis là ça dit qu'il est pas modifié, alors la sauvegarde ne veut pas se faire, donc il faut passer manuellement le champs à Modified.

    Touts les petits trucs dans ce genre, qu'on a pas à se soucier avec RIA Services.

  18. #18
    Membre expérimenté Avatar de DotNET74
    Homme Profil pro
    Watch R&D Engineer & Apprenti .NET
    Inscrit en
    Août 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Watch R&D Engineer & Apprenti .NET

    Informations forums :
    Inscription : Août 2003
    Messages : 1 986
    Points : 1 453
    Points
    1 453
    Par défaut
    Citation Envoyé par Pol63 Voir le message
    pas mieux ...

    vraiment pas simple leur silverlight ...
    Je rejoins entièrement car moi aussi je galère grave avec cette techno et comme toi je viens du client lourd qui me semble bien plus simple que ce qu'on a aujourd'hui !

    Ou alors je vieilli

  19. #19
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    l'install est pas intuitive, mais une fois que c'est fait ca vaut le coup quand même
    on se retrouve un peu comme sur un client lourd

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Utiliser R depuis un autre logiciel en C#
    Par petitours dans le forum R
    Réponses: 2
    Dernier message: 07/10/2012, 17h12
  2. Acces WCF depuis Silverlight
    Par Logann23 dans le forum Développement Sharepoint
    Réponses: 8
    Dernier message: 23/04/2012, 09h12
  3. Utiliser un Web Service depuis silverlight
    Par jubourbon dans le forum C#
    Réponses: 2
    Dernier message: 25/06/2010, 10h03

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