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

ASP.NET Discussion :

AutoCompletionExtender n'afiiche rien


Sujet :

ASP.NET

  1. #1
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 220
    Par défaut AutoCompletionExtender n'afiiche rien
    Encore lui

    Et oui encore moi... Je suis aboné aux problèmes ou aux tentatives de solution difficiles tout dépend de comment on voit les choses...

    Cette fois comme le titre l'indique, j'ai un souchi avec l'élément AutoCompletionExtender provenant du Ajax ToolKit.

    J'ai suivi ce que j'ai trouvé sur le net a ce propos (la plupart du temps en anglais bien sûr) mais bien souvent cet élément est utilisé avec un webservice et bien entendu, je n'en veux pas...

    Voici les liens qui m'ont servis:
    http://omegacoder.com/?p=243
    http://allwrong.wordpress.com/2007/0...a-page-method/


    et voici mon code (.aspx):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <tr>
                    <td><asp:Label ID="LabelModifCODFOR" runat="server" Text="Code fournisseur : "></asp:Label></td>
                    <td class="style1"><asp:TextBox ID="TextBoxResultCODFOR" runat="server"></asp:TextBox></td>
                    <td>
                        <asp:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server" 
                            TargetControlID="TextBoxResultCODFOR" ServiceMethod="ListeDeFournisseurs">
                        </asp:AutoCompleteExtender>
                    </td>
     
                </tr>
    (.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
    28
    29
    30
     
        protected String[] ListeDeFournisseurs(string prefixText, int count)
        {
            SqlConnection sqlcon = new SqlConnection();
            sqlcon.ConnectionString = ConfigurationManager.ConnectionStrings["prodchimiquesConnection"].ConnectionString;
            sqlcon.Open();
     
            List<string> ListeFournisseurs = new List<string>();
     
            try
            {
                SqlCommand CommandeFournisseurs = sqlcon.CreateCommand();
                CommandeFournisseurs.CommandText = @"SELECT * FROM Fournisseurs";
     
                SqlDataAdapter FournisseursAdapter = new SqlDataAdapter(CommandeFournisseurs.CommandText, sqlcon);
                DataTable DTFournisseurs = new DataTable();
                FournisseursAdapter.Fill(DTFournisseurs);
     
     
                foreach (DataRow DTF in DTFournisseurs.Rows)
                {
                    ListeFournisseurs.Add(DTF["DITTA"].ToString());
                }
            }
            catch (Exception except)
            {
                throw new Exception("La récupération des fournisseurs à échouée : " + except.Message);
            }
            return ListeFournisseurs.ToArray();
        }

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Par défaut
    et quel est le problème ?

    les symptômes ?

  3. #3
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut
    Citation Envoyé par papouuu Voir le message
    (.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
    28
    29
    30
    31
    [System.Web.Services.WebMethod]
        protected String[] ListeDeFournisseurs(string prefixText, int count)
        {
            SqlConnection sqlcon = new SqlConnection();
            sqlcon.ConnectionString = ConfigurationManager.ConnectionStrings["prodchimiquesConnection"].ConnectionString;
            sqlcon.Open();
            
            List<string> ListeFournisseurs = new List<string>();
    
            try
            {
                SqlCommand CommandeFournisseurs = sqlcon.CreateCommand();
                CommandeFournisseurs.CommandText = @"SELECT * FROM Fournisseurs";
    
                SqlDataAdapter FournisseursAdapter = new SqlDataAdapter(CommandeFournisseurs.CommandText, sqlcon);
                DataTable DTFournisseurs = new DataTable();
                FournisseursAdapter.Fill(DTFournisseurs);
    
    
                foreach (DataRow DTF in DTFournisseurs.Rows)
                {
                    ListeFournisseurs.Add(DTF["DITTA"].ToString());
                }
            }
            catch (Exception except)
            {
                throw new Exception("La récupération des fournisseurs à échouée : " + except.Message);
            }
            return ListeFournisseurs.ToArray();
        }
    Il te faut nécessairement passer par une webmethod. Pourquoi dis tu que la solution à base de webservice ne te conviens pas ?
    Tu peux le faire en ajoutant [System.Web.Services.WebMethod] au dessus e la déclaration de ta fonction faisant la recherche.
    D'autre part, je pense que tu devrais enrichir la déclaration de ton autoCompleteExtender avec quelques propriétés : MinimumPrefixLength, CompletionInterval, ...

    Enfin, même si cela n'empêchera pas ton code de fonctionner, pense à sortir la récupération de tes fournisseurs de ta fonction (et stocke les en session dans le viewstate ou autre) sans quoi tu relanceras un appel à ta base de données à chaque nouveau caractère dans ton textbox... Pas top niveau performances.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 220
    Par défaut
    C'est ok, ca marche, reste plus qu'à éditer le css.

    Voici le lien qui m'a débloqué:

    http://www.aspsnippets.com/Articles/...-Services.aspx

    Il y à un exemple en C# ainsi qu'en VB

  5. #5
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut
    Citation Envoyé par papouuu Voir le message
    C'est ok, ca marche, reste plus qu'à éditer le css.

    Voici le lien qui m'a débloqué:

    http://www.aspsnippets.com/Articles/...-Services.aspx

    Il y à un exemple en C# ainsi qu'en VB
    Oui oui, ce qui revient en gros à ce que je t'ai proposé...

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 220
    Par défaut
    Oui, j'avais ajouté ce que tu m'avais donné au dessus de ma méthode, mais pas de résultat. Je pense que c'est le type de liste que je renvoyais qui posait problème.
    J'ai tout essayé ave un type string[] sans aucun résultat et le type List<string> fonctionne très bien

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

Discussions similaires

  1. [ jointure externe ] j'y pompe rien
    Par jaimepasteevy dans le forum Langage SQL
    Réponses: 3
    Dernier message: 16/12/2003, 17h57
  2. Réponses: 8
    Dernier message: 04/09/2003, 16h07
  3. Ne rien afficher
    Par rockbiker dans le forum DirectX
    Réponses: 3
    Dernier message: 20/05/2003, 18h02
  4. [debutante] [JDBComboBox]rien à l'affichage
    Par Lina dans le forum JBuilder
    Réponses: 3
    Dernier message: 22/11/2002, 13h31

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