Eu ja olhei todas as respostas dadas com referencia ao AutoComplete citadas no forum, e simplesmente nao consigo entender o que pode estar saindo de errado, sou novo em .net e estou batendo a cabeça nesse componente ha pelo menos uma semana tentando faze-lo funcionar.
O que ja fiz!
1- a minha pagina ja tem um sriptmanager, pq o mesmo vem da master,
2- coloquei o autocomplete relacionado ao meu textBox
3- Criei um webservice com o nome ServiceCatalogo
4- Criei o meu metodo para ser consumido la e informei no serviceMethod do componente
5- como o meu WebService esta dentro de uma pasta no servicePath ficou assim ~/WebService/ServiceCatalogo.asmx
Peço desculpas pelo quantidade de código na tela, mas ja nao sei mais o que fazer pra resolver!
Tela
code snipet
<asp:TextBox BorderStyle="Groove" ID="txtCodCompleto" runat="server" Width="188px"></asp:TextBox> <cc1:AutoCompleteExtender runat="server" ID="acexCodCompleto" TargetControlID="txtCodCompleto" ServicePath="~/WebService/ServiceCatalogo.asmx"ServiceMethod="GetCatalogo" MinimumPrefixLength="2" CompletionInterval="1000" EnableCaching="true" CompletionSetCount="12"></cc1:AutoCompleteExtender>
webservice
code snipet
using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Web; using System.Web.Services; using System.Web.Services.Protocols; using System.Collections.Generic; using System.Configuration; using System.Data.SqlClient; using Gme.Core; namespace ServiceCatalogo { /// <summary> /// Summary description for AutoComplete /// </summary> [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [ToolboxItem(false)] [System.Web.Script.Services.ScriptService] public class AutoComplete : WebService { private SqlConnection cnn; private SqlCommand cmd; private SqlDataAdapter dataAdapter; private DataTable dataTable; [WebMethod] public string[] GetCatalogo(string prefixText, int count, string contextKey) { cnn = new SqlConnection(); DataSet dSet = new DataSet(); dataAdapter = new SqlDataAdapter(); dataTable = new DataTable(); List<string> resultado = new List<string>(); cnn.ConnectionString = ConfigurationManager.ConnectionStrings["cnnStr"].ConnectionString; cmd = new SqlCommand(); cmd.Connection = cnn; cmd.CommandType = CommandType.Text; cmd.CommandText = "SELECT pk_codificacao, cd_completo, ds_descricaoCurtaBR, FROM vCodificacao WHERE (fk_tpNorma = " + Util.getInteiro(contextKey) + ") AND (cd_completo LIKE '%" + prefixText + "%')"; SqlDataReader dr; cnn.Open(); dr = cmd.ExecuteReader(); while (dr.Read()) { resultado.Add(dr["ds_descricaoCurtaBR"].ToString()); } dr.Close(); cnn.Close(); return resultado.ToArray(); } } }