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 :

[architecture] Interaction entre une application ASP.Net MVC et Silverlight


Sujet :

Silverlight

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2003
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2003
    Messages : 197
    Points : 115
    Points
    115
    Par défaut [architecture] Interaction entre une application ASP.Net MVC et Silverlight
    Bonjour à tous.

    Je travaille actuellement sur un projet développé en ASP.Net MVC2.

    On me demande de coder un petit module (en Silverlight si possible) à implémenter dans le site web.

    j'ai donc crée un projet Silverlight, qui démarre très bien et s'affiche correctement dans la page web de test (ajouté automatiquement lors de la création du projet).

    Maintenant j'essaie d'accéder au donnée de mon site web pour les afficher dans le plugin silverlight.

    En cherchant un peu je suis tombé sur cet exemple utilisant JSON : http://timheuer.com/blog/archive/200...spnet-mvc.aspx

    Le principe est simple on requête le site web qui nous renvoie un résultat JSON et ensuite on l'exploite dans le plugin Silverlight.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    private void UserControl_Loaded(object sender, RoutedEventArgs e)
            {
                WebClient mvc = new WebClient();
                mvc.OpenReadCompleted += new OpenReadCompletedEventHandler(mvc_OpenReadCompleted);
                mvc.OpenReadAsync(new Uri("http://localhost:2035/Product/ListQuestions"), );
            }
     
            void mvc_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
            {
                object tmp = e.Result;
            }
    Mon souci est que le site nécessite une authentification, donc lorsque le plugin appelle la fonction ListQuestions du controller product je me retrouve avec une exception de sécurité.

    Ma question est donc :

    Puis je récupérer les informations d'authentification saisi par l'utilisateur quand il accède au site ASP.Net MVC pour les fournir à mon objet WebClient ?

    Si non est il possible de récupérer des informations de mon site asp.net MVC
    (soit récupérer le login de l'utilisateur connecté au pire le webservice ne demandera pas le mot de passe pour récupérer les données à afficher dans le plugin silverlight, ou alors récupérer des données dans le navigateur)

    Si non encore alors comment puis je résoudre ce souci.

    J'espère avoir été clair, j'affinerais si vous avez des questions

    Merci d'avance de vos réponses

  2. #2
    Membre émérite
    Avatar de Samuel Blanchard
    Homme Profil pro
    Expert .NET
    Inscrit en
    Février 2010
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Expert .NET

    Informations forums :
    Inscription : Février 2010
    Messages : 1 504
    Points : 2 682
    Points
    2 682
    Par défaut
    Bonjour,

    En quelle version de Silverlight travailles-tu ?
    Tu as essayé en ajoutant les credentials ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mvc.Credentials = new NetworkCredential("name", "password", "domain");

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2003
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2003
    Messages : 197
    Points : 115
    Points
    115
    Par défaut
    Alors en fait je suis en mode d'authentification par formulaire côté ASP.net.

    L'utilisateur doit fournir son login et son mot de passe (c'est un extranet).

    Après discussion avec mon responsable on peut éventuellement envisager ne fournir que le login de l'utilisateur à un webservice qui ne nécessiterais pas d'authentification.

    En gros j'ai deux solutions possibles :

    Utiliser une fonction d'un controller de mon site web, dans ce cas je dois absolument récupérer les informations d'authentification que l'utilisateur a fourni.

    Déclarer et utiliser un webservice, dans ce cas je dois au moins récupérer le login de l'utilisateur (quitte à le placer dans un hiddenfield côté client).

    Cordialement

  4. #4
    Membre émérite
    Avatar de Samuel Blanchard
    Homme Profil pro
    Expert .NET
    Inscrit en
    Février 2010
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Expert .NET

    Informations forums :
    Inscription : Février 2010
    Messages : 1 504
    Points : 2 682
    Points
    2 682
    Par défaut
    Si tu veux faire quelques chose de simple tu peux créer une webmethode d'authentification qui te renvoie un jeton. Tu stockes le jeton en base de donnée ou en session coté serveur si l'authentification a réussi.
    Il suffit alors aux autres WebMethodes de passer comme paramètre le jeton puis de le comparer avec celui stocker coté serveur.

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2003
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2003
    Messages : 197
    Points : 115
    Points
    115
    Par défaut
    Alors en fait on a changé notre fusil d'épaule.

    Les données à afficher n'étant pas sensible on communiquera en clair (via les initparams) le login de l'utilisateur. Ensuite je me connecterais au web service pour rapatrier les informations.

    Maintenant mon nouveau souci, c'est de savoir comment communiquer les informations du webservice

    Du coup c'est résolu merci

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

Discussions similaires

  1. Internationalisation d'une application ASP.NET MVC 3 Razor
    Par Hinault Romaric dans le forum ASP.NET MVC
    Réponses: 2
    Dernier message: 02/07/2015, 14h07
  2. Réponses: 0
    Dernier message: 24/11/2013, 08h07

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