Accueil > Forum > > > > ajax+basede bonnée+autocomplétion
ajax+basede bonnée+autocomplétion
dimanche 13 mai 2007 à 05:35:48 |
ajax+basede bonnée+autocomplétion

Shany
|
Bonsoir, Dans le cadre d'une application, je souhaiterais réaliser une autocomplétion. J'utilise VS2005, je code en asp.net C# avec ajax en plus. J'ai vu dans ma boite à outils ajax toolkit le control AutoCompleteExtender, c'est celui que je souhaite utiliser avec un web service. Mon problème se trouve au niveau du webservice, je ne sais pas comment l'utiliser pour pouvoir réaliser mon autocomplétion.         Cette autocomplétion est relié à un texbox. (j'ai dejà paramétré le control AutoCompleteExtender pour qu'il puise utilisé le webservice) Quand l'utisateur, entre la première lettre d'un mot par exemple, une liste de choix doit s'afficher (comme pour le google suggest). La liste de choix se trouve dans une base de données type access 2003. Si quelqu'un pouvait m'aider en m'expliquant quoi faire au niveau du webservice ce serait très aimable de sa part.   Merci. 
|
|
lundi 14 mai 2007 à 12:17:20 |
Re : ajax+basede bonnée+autocomplétion

yanis7518
|
Salut shani
voila la structure que tu dois utiliser pour utiliser ton webservice avec le composant autocomplete
using System; using System.Collections.Generic; using System.Web.Services; using System.Data.SqlClient;
[WebService(Namespace = " [ Lien ]")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.Web.Script.Services.ScriptService] public class AutoComplete : WebService { public AutoComplete() { }
[WebMethod] [System.Web.Script.Services.ScriptMethod] public string[] GetCompletionList(string prefixText, int count) { //ton traitement ici } }
ensuite tu n'as plus qu'a paramétrer ton controle de cette manière
<ajaxToolkit:AutoCompleteExtender runat="server" ID="autoComplete1" TargetControlID="TON TEXTBOX" ServicePath="~/AutoComplete.asmx" ServiceMethod="GetCompletionList" MinimumPrefixLength="3" CompletionInterval="1000" EnableCaching="true" CompletionSetCount="12" />
si les résultats de ta requete son important je te conseille de laisser le "MinimumPrefixLength" à 3 sinon met le à 1.
Voila bonne journée 
|
|
lundi 14 mai 2007 à 16:27:04 |
Re : ajax+basede bonnée+autocomplétion
|
lundi 14 mai 2007 à 17:00:48 |
Re : ajax+basede bonnée+autocomplétion

yanis7518
|
désolé j'avais mal compris  donc pour te connecter a ta base Access via OLE voila le code
OleDbConnection connec = new OleDbConnection;
connec.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;UserID=Admin;DataSource=C:\\MaBase.mdb;"; connec.Open();
ensuite tu as juste à executer ta requete
string requete = "SELECT tavalue FROM ..."; OleDbCommand tmpcmd = new OleDbCommand(requette, connect); OleDbDataReader tmpreader = tmpcmd.ExecuteReader(); while(tmpreader.Read()) { console.Writeline(tmpreader.getstring(0)); } tmpreader.close(); connec.close();
voila je pense que la j'ai repondu a ta question (enfin j'espere )
|
|
lundi 14 mai 2007 à 17:25:22 |
Re : ajax+basede bonnée+autocomplétion

yanis7518
|
a la place du console.writeline tu stock tes valeurs dans un tableaux de string
|
|
lundi 14 mai 2007 à 20:03:50 |
Re : ajax+basede bonnée+autocomplétion

Shany
|
Re Yanis, j'ai testé ton code mais ca ne fonctionne pas. Quand tu me dis de stock mes valeurs dans un tableau de string, c'est-à-dire !?
voici le code que j'ai tapé. J'avais tester avec le console.writeLine mais ca ne donnait rien.
using System; using System.Web; using System.Collections; using System.Web.Services; using System.Web.Services.Protocols; using System.Data; using System.Data.OleDb;
/// <summary> /// Description résumée de autocomprs /// </summary> [WebService(Namespace = " [ Lien ]")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class autocomprs : System.Web.Services.WebService {
public autocomprs () {
//Supprimez les marques de commentaire dans la ligne suivante si vous utilisez des composants conçus //InitializeComponent(); }
[WebMethod] public string[] AutoSuggest(string prefixText, int count) {
OleDbConnection connec = new OleDbConnection();
connec.ConnectionString = "Provider=Microsoft.JET.OLEDB.4.0;DataSource=base.mdb;";
connec.Open();
string requete = "SELECT Nom FROM base where Nom LIKE 'prefixText' ORDER BY Nom";
OleDbCommand tmpcmd = new OleDbCommand(requete, connec);
OleDbDataReader adaption = tmpcmd.ExecuteReader();
while(adaption.Read()) {
Console.WriteLine(adaption.GetString(0));
}
adaption.Close(); connec.Close();
}
}
Si tu pouvais m'expliquer plus en détail l'utilisation du tableau de string ce serait très sympa. Merci.
|
|
mardi 15 mai 2007 à 09:34:57 |
Re : ajax+basede bonnée+autocomplétion

yanis7518
|
tu as une erreur au niveau de cette ligne
string requete = "SELECT Nom FROM base where Nom LIKE 'prefixText' ORDER BY Nom";
tu dois rajouter le % pour lui indiquer qu'il doit te retourner tous les mots commençant par ton préfixe et tu obtiens :
string requete = "SELECT Nom FROM base where Nom LIKE 'prefixText%' ORDER BY Nom";
|
|
mardi 15 mai 2007 à 19:39:16 |
Re : ajax+basede bonnée+autocomplétion

Shany
|
Re salut Yanis, J'ai corrigé l'erreur que j'avais néanmoins lorsque je lance l'application une erreur m'est retournée :
Erreur 1 'autocomprs.AutoSuggest(string, int)' : tous les chemins de code ne retournent pas nécessairement une valeur.
voici le code corriger, si tu arrive à trouver où se trouve l'erreur ... moi je pense que c'est au niveau des arguments déclarer dans la méthode utilisée !? :
using System; using System.Web; using System.Collections; using System.Web.Services; using System.Web.Services.Protocols; using System.Data; using System.Data.OleDb;
/// <summary> /// Description résumée de autocomprs /// </summary> [WebService(Namespace = " [ Lien ]")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class autocomprs : System.Web.Services.WebService {
public autocomprs () {
//Supprimez les marques de commentaire dans la ligne suivante si vous utilisez des composants conçus //InitializeComponent(); }
[WebMethod] public string[] AutoSuggest(string prefixText, int count) {
OleDbConnection connec = new OleDbConnection();
connec.ConnectionString = "Provider=Microsoft.JET.OLEDB.4.0;DataSource=base.mdb;";
connec.Open();
string requete = "SELECT Nom FROM base where Nom LIKE 'prefixText%' ORDER BY Nom";
OleDbCommand tmpcmd = new OleDbCommand(requete, connec);
OleDbDataReader adaption = tmpcmd.ExecuteReader();
while(adaption.Read()) {
Console.WriteLine(adaption.GetString(0));
}
adaption.Close(); connec.Close();
}
}
Merci encore pour l'aide que tu m'apporte.
|
|
mardi 15 mai 2007 à 19:39:28 |
Re : ajax+basede bonnée+autocomplétion

Shany
|
Re salut Yanis, J'ai corrigé l'erreur que j'avais néanmoins lorsque je lance l'application une erreur m'est retournée :
Erreur 1 'autocomprs.AutoSuggest(string, int)' : tous les chemins de code ne retournent pas nécessairement une valeur.
voici le code corriger, si tu arrive à trouver où se trouve l'erreur ... moi je pense que c'est au niveau des arguments déclarer dans la méthode utilisée !? :
using System; using System.Web; using System.Collections; using System.Web.Services; using System.Web.Services.Protocols; using System.Data; using System.Data.OleDb;
/// <summary> /// Description résumée de autocomprs /// </summary> [WebService(Namespace = " [ Lien ]")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class autocomprs : System.Web.Services.WebService {
public autocomprs () {
//Supprimez les marques de commentaire dans la ligne suivante si vous utilisez des composants conçus //InitializeComponent(); }
[WebMethod] public string[] AutoSuggest(string prefixText, int count) {
OleDbConnection connec = new OleDbConnection();
connec.ConnectionString = "Provider=Microsoft.JET.OLEDB.4.0;DataSource=base.mdb;";
connec.Open();
string requete = "SELECT Nom FROM base where Nom LIKE 'prefixText%' ORDER BY Nom";
OleDbCommand tmpcmd = new OleDbCommand(requete, connec);
OleDbDataReader adaption = tmpcmd.ExecuteReader();
while(adaption.Read()) {
Console.WriteLine(adaption.GetString(0));
}
adaption.Close(); connec.Close();
}
}
Merci encore pour l'aide que tu m'apporte.
|
|
mardi 15 mai 2007 à 19:39:31 |
Re : ajax+basede bonnée+autocomplétion

Shany
|
Re salut Yanis, J'ai corrigé l'erreur que j'avais néanmoins lorsque je lance l'application une erreur m'est retournée :
Erreur 1 'autocomprs.AutoSuggest(string, int)' : tous les chemins de code ne retournent pas nécessairement une valeur.
voici le code corriger, si tu arrive à trouver où se trouve l'erreur ... moi je pense que c'est au niveau des arguments déclarer dans la méthode utilisée !? :
using System; using System.Web; using System.Collections; using System.Web.Services; using System.Web.Services.Protocols; using System.Data; using System.Data.OleDb;
/// <summary> /// Description résumée de autocomprs /// </summary> [WebService(Namespace = " [ Lien ]")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class autocomprs : System.Web.Services.WebService {
public autocomprs () {
//Supprimez les marques de commentaire dans la ligne suivante si vous utilisez des composants conçus //InitializeComponent(); }
[WebMethod] public string[] AutoSuggest(string prefixText, int count) {
OleDbConnection connec = new OleDbConnection();
connec.ConnectionString = "Provider=Microsoft.JET.OLEDB.4.0;DataSource=base.mdb;";
connec.Open();
string requete = "SELECT Nom FROM base where Nom LIKE 'prefixText%' ORDER BY Nom";
OleDbCommand tmpcmd = new OleDbCommand(requete, connec);
OleDbDataReader adaption = tmpcmd.ExecuteReader();
while(adaption.Read()) {
Console.WriteLine(adaption.GetString(0));
}
adaption.Close(); connec.Close();
}
}
Merci encore pour l'aide que tu m'apporte.
|
|
Cette discussion est classée dans : ajax, webservice, autocomplétion, basede, bonnée
Répondre à ce message
Sujets en rapport avec ce message
Comment éviter que l'autocomplétion native de Firefox ou IE passe devant un contrôle d'autocomplétion Ajax? [ par Nixar ]
Bonjour à tous,Pour mon site j'ai implémenté un contrôle "AutoComplete" de l'AjaxControlToolkit. Tout fonctionne correctement à ceci près que j'ai par
ajax toolkit autocompletion [ par rymouche ]
Bonjour,Je développe en C# sur VS 2005Je souhaiterais inclure plusieurs textbox sur lesquels la même autocomplétion sera faite. J'ai un composant ascx
Mettre un site Ajax en production [ par lelynx ]
Salut, J'ai une application Ajax développée avec VS2008. Elle est composée d'une page aspx dans laquelle se trouve le code js. La partie communicatio
Webservice et erreur namespace [ par Nanto ]
Bonjour, j'ai dû transformer un site ASP créé à partir d'un système de fichier en projet C# d'application Web. Après avoir corrigé tous les problèmes
ASP.NET AJAX ou MVC [ par Djzlouk ]
Bonjour, Je commence à bien de débrouillé pour créer des site web & co... Mais j'ai une GRANDE question ! Si on se lance dans le modele MVC, on ne p
Asp et ajax [ par xadimo ]
salut! En fait moi j'utilise des Response.Redirect(""); dans des liens de qui se trouvent dans ma master page avec un UpdatePanel. Mon probleme c que
GriveView / Repeater / Autre : Remplissage Asynchrone avec AJAX [ par Donpi ]
Salut à tous, avant tout je ne suis pas sur de poster au bon endroit donc je demande votre indulgence. Je me présente en deux mots, je suis développe
Comment installer Ajax dans vb.net 2005 [ par nsegi ]
Bonjour cher programmeurs, J'ai tellecharger ajax mais je n'arrive pas a l'installer dans vb.net 2005 que j'utilise pour faire mes programmes, y a t-i
WebService/WCF Ajax Enabled & authentification anonyme/windows = galères [ par lutecefalco ]
Bonjour tout le monde J'ai un site web intranet qui est composé d'une page principale. J'ai également un sous dossier \WebServices qui contient un we
Comment atteindre les controles de la page aspx dans une Ajax.Method? [ par obitskater ]
Bonjour tout le monde, Voilà, je vous expose mon petit soucis: Dans mon code-behind C# de ma page aspx, j'ai une methode AjaxPro que je peux appeler
Livres en rapport
|
Derniers Blogs
L'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIESL'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIES par odewit
La tendance est aux interfaces naturelles (NUI), et le keynote de Bill Buxton au MIX l'a bien souligné.
La charte graphique et ergonomique de Windows Phone 7 a donc été entièrement repensée en vue d'obtenir un maximum d'efficacité sur ce point. En re...
Cliquez pour lire la suite de l'article par odewit COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE?COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE? par Matthieu MEZIL
Avec EF, les vues doivent être mappées sur des entity types. Le problème c'est que les entity types doivent avoir une clé. Avec EF, nous avons les complex type qui n'ont pas de clé mais les vues ne peuvent pas être mappées dessus. Avec EF4, il est possibl...
Cliquez pour lire la suite de l'article par Matthieu MEZIL [WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL?[WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL? par JeremyJeanson
Certain d'entre vous on peut être vécu cette situation embarrassante après quelques temps passer avec WF4 : Au début avec mon " ActivityDesigner" , tout allait bien. Et puis un jour j'ai au des problèmes de " Binding" . Alors nous sommes allé sur le site ...
Cliquez pour lire la suite de l'article par JeremyJeanson
Forum
UTILISATEURUTILISATEUR par zaydounhlel
Cliquez pour lire la suite par zaydounhlel RE : VIRUSRE : VIRUS par ghuysmans99
Cliquez pour lire la suite par ghuysmans99
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|