AutoCompleteExtender in Textbox from SQL Table

Johnbhatt
Posted by Johnbhatt under ASP.NET AJAX category on | Points: 40 | Views : 6154
Hi,
We will learn how to enable AutoCompleteExtender in Textbox Control.

Here, We will learn to Map data from SQL Database to Textbox within Same Page. WebMethod in .cs Page.

Directly to Code:

ASPX Page Code

<table>
<tr>
<td>
Vehicle No :
</td>
<td>
<asp:TextBox ID="txtVehicleNo" runat="server" ToolTip="Enter Vehicle Number (Full)"
Width="168px"></asp:TextBox>
<asp:AutoCompleteExtender ID="txtVehicleNo_AutoCompleteExtender" runat="server" DelimiterCharacters=""
Enabled="True" ServiceMethod="GetVehicleList" ServicePath="" TargetControlID="txtVehicleNo"
UseContextKey="True" MinimumPrefixLength="2">
</asp:AutoCompleteExtender>
</td>
</tr>
</table>


Now Code in ASPX.CS Page.
Add these Namespages for below Code.

using System.Data; // For Dataset
using System.Data.SqlClient; // For SQlConnection/Adaptor
using System.Configuration; // Access Consting from Web.Config.
using System.Collections.Generic;

[System.Web.Services.WebMethodAttribute(), System.Web.Script.Services.ScriptMethodAttribute()]
public static string[] GetVehicleList(string prefixText, int count, string contextKey)
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["ConToJohn"].ConnectionString);
SqlDataAdapter adp = new SqlDataAdapter("Select distinct VehicleNo from VehicleDispatch where VehicleNo like '%" + prefixText + "%'", con);
DataSet ds = new DataSet();
adp.Fill(ds, "Vehicles");
string[] VehicleNo = new string[ds.Tables["Vehicles"].Rows.Count];
for (int i = 0; i <= ds.Tables["Vehicles"].Rows.Count - 1; i++)
{
VehicleNo.SetValue(ds.Tables["Vehicles"].Rows[0][0].ToString(), i);
}
return VehicleNo;
}


I have Selected Only Unique Value from Database using SELECT DISTINCT .... command. If you want all records, Simply Change SQL Query to SELECT .....

Will be glad to hear from you...

Comments or Responses

Login to post response