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 :

Authentification par formulaire


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 24
    Par défaut Authentification par formulaire
    Bonjour a tous,

    Voila mon problème :
    Pour entrer sur un site web (interface utilisateur crée en silverlight), l'utilisateur rentre un login et un mot de passe, puis clic sur connexion.

    Mais voila, lorsque que je clique sur connexion rien ne se passe (a part le fait que si rien n'est entrer dans les champs, on le prévient).

    Je sais pas si lorsque je clique, la requête SQL s'exécute.

    Voila mon code de mon service.cs
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    [ServiceContract(Namespace = "")]
    [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
    public class Service1
    {
     
     
        private System.Data.SqlClient.SqlConnection sqlconnection; //creation d'un objet issue de sqlconnection
        private System.Data.SqlClient.SqlCommand sqlcommande; //creation d'un objet issue de sqlcommande
        [OperationContract]
        public bool Connexion()
        { 
            // Ajoutez votre implémentation d'opération ici
            //connection 
            this.sqlconnection = new System.Data.SqlClient.SqlConnection();//instance de la classe sqlconnection
            this.sqlconnection.ConnectionString = "Data Source=709-13;Initial Catalog=DataClasses;Integrated Security=True";
            this.sqlconnection.FireInfoMessageEventOnUserErrors = false;
     
            //requete
            this.sqlcommande = new System.Data.SqlClient.SqlCommand();
            this.sqlcommande.CommandText = "SELECT PassWord FROM DataBaseSiteWeb WHERE (Login = 'TextBlock_Login') AND (PassWord = 'TextBlock_MDP')";
     
            return true;
     
        }
        // Ajoutez des opérations supplémentaires ici et marquez-les avec [OperationContract]
    }
    Et le code de ma page xaml.cs :
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    namespace ProjetSiteWeb
    {
        public partial class Page : UserControl
        {
            public Page()
            {
                InitializeComponent();
            }
     
            private void Button_Connexion_Click(object sender, RoutedEventArgs e)
            {
                ServiceReference2.Service1Client client = new ProjetSiteWeb.ServiceReference2.Service1Client();
                client.ConnexionCompleted += new EventHandler<ProjetSiteWeb.ServiceReference2.ConnexionCompletedEventArgs>(client_ConnexionCompleted);
                client.ConnexionAsync();
     
            }
     
            void client_ConnexionCompleted(object sender, ProjetSiteWeb.ServiceReference2.ConnexionCompletedEventArgs e)
            {
                //throw new NotImplementedException();
                TextBlock_LoginRequis.Text = "*";
                TextBlock_PassRequis.Text = "*";
                TextBlock_InfoRequise.Text = "* Vous devez entrez un login et un mot de passe correcte";
            }
        }
    }
    Merci de vos futur réponse.

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

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Tu es parti totalement de travers.

    1. Créer une méthode dans ton Service qui prend en paramètre le login et le mot de passe.
    2. Exécuter ta requête SQL pour vérifier si les infos sont bonnes : si oui tu retournes true sinon false.
    3. Tu instancies ton Service dans ton appli Silverlight, tu t'abonnes à Connexion_Completed et tu appelles la méthode Connexion.
    4. Dans la Connexion_Completed, si e.Result = true (je crois que c'est ça) alors tu es authentifié, sinon non.

    C'est tout.

  3. #3
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 24
    Par défaut
    D'accord, je me douter que j'étais partis en live.

    Merci de ta réponse Skyounet.

  4. #4
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 24
    Par défaut
    dans mon service je lui donne quoi comme paramétre de retour ?

    voici mon code (service.cs) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
        public bool Connexion(string utilisateur, string motDePasse)
        {
            DataClassesDataContext dc = new DataClassesDataContext();
            //var requete = (from auto in dc.DataBaseSiteWeb where utilisateur == auto.Login && motDePasse == auto.PassWord select auto.ClientID);
     
             var requete = (from clientID in dc.DataBaseSiteWeb where (utilisateur == clientID.Login) select clientID);
             if (requete = true)
             {
                 return true;
             }
             else { return false; }
     
            //return requete.ToList();
        }
    la je suis un peu perdu.

    Merci de votre aide

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

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Je verrais bien un truc dans ce genre :

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var requete = (from clientID in dc.DataBaseSiteWeb where (utilisateur == clientID.Login && clientID.Password == password) select clientID).FirstOrDefault();
     
    return (requete != null);

    En gros : tu récupères le client qui a pour login et password les infos saisies dans ton formulaire.

    Si client == null : aucun client ne satisfait donc les infos sont erronées donc tu retournes false sinon le client existe le login/password sont corrects, tu retournes true.

  6. #6
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 24
    Par défaut
    Citation Envoyé par Skyounet Voir le message
    Si client == null : aucun client ne satisfait donc les infos sont erronées donc tu retournes false sinon le client existe le login/password sont corrects, tu retournes true.
    le test je le fais sur ma page service.cs ou page.xaml.cs ?

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

Discussions similaires

  1. Authentification par formulaire
    Par IcedLand dans le forum ASP.NET
    Réponses: 17
    Dernier message: 20/07/2009, 15h38
  2. Réponses: 2
    Dernier message: 09/03/2009, 16h54
  3. Réponses: 3
    Dernier message: 23/11/2007, 12h50
  4. Réponses: 7
    Dernier message: 22/08/2007, 09h43
  5. [1.1] Authentification par formulaire
    Par kakek dans le forum ASP.NET
    Réponses: 2
    Dernier message: 30/05/2005, 09h37

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