Click here to Skip to main content
Click here to Skip to main content
Go to top

ASP.NET Ajax AutoCompleteExtender Without Using Web Service

, 28 Jun 2012
Rate this:
Please Sign up or sign in to vote.
ASP.Net Ajax AutoCompleteExtender without using Web Service

Introduction

This tip shows how to use Ajax AutoCompleteExtender in an ASP.NET application, without adding a Web Service.

Steps

  • Create an ASP.NET 4.0 Web Application
  • Add reference to AjaxControlToolit
  • Open Default.aspx
  • Add Script Manager
  • Add Ajax AutoCompleteExtender 

Using the Code

Using the code (default.aspx)

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
<asp:ScriptManager ID="ScriptManager1" runat="server" 
EnablePageMethods = "true">
</asp:ScriptManager>

Enter a Product Name
<asp:TextBox ID="txtProductList" runat="server"></asp:TextBox>
<cc1:AutoCompleteExtender ServiceMethod="GetProductList" 
    MinimumPrefixLength="1"
    CompletionInterval="0" EnableCaching="false" CompletionSetCount="10" 
    TargetControlID="txtProductList"
    ID="autoCompleteExtender1" runat="server" FirstRowSelected = "false">
</cc1:AutoCompleteExtender>
    </div>
    </form>
</body>
</html>

Default.aspx.cs

[System.Web.Script.Services.ScriptMethod()]
    [System.Web.Services.WebMethod]
    public static string[] GetProductList(string prefixText, int count)
    {
        // Get the Products From Data Source. Change this method to use Database
        List<string> productList = GetProducts();

        // Find All Matching Products
        var list = from p in productList
                   where p.Contains(prefixText)
                   select p;

        //Convert to Array as We need to return Array
        string[] prefixTextArray = list.ToArray<string>();

        //Return Selected Products
        return prefixTextArray;
    }  

Points of Interest

  • If you want that your method responds to the Scripting Language, make sure to add [System.Web.Script.Services.ScriptMethod()] to method attribute. Else, this won't work
  • And yes, this does not require addition of Web Service!

History

  • 29th June, 2012: Initial version

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

SmartCodar

India India
I am a Tech Lead / .Net Architect,
 
I love working with Business Challenges, Requirements
 
I work mainly for Designing eCommerce Portals Using ASP.Net enabled Frameworks such as Mediachase, zNode and Storefront.

I love writing my Articles at Code Project and my site www.SmartCodar.com.

Comments and Discussions

 
QuestionThis worked great. PinmemberGreg Pierce7-Aug-14 11:51 
GeneralThank you PinmemberTuduru Sai Krishna21-Jan-14 19:08 
Questionautoextender is not working Pinmemberabhinav_8917-Jul-13 21:28 
GeneralMy vote of 5 PinmemberReza Ahmadi28-Jun-13 0:39 
GeneralMy vote of 4 Pinmembermusthaan19-Mar-13 3:13 
QuestionGood Article PinmemberAlireza_136222-Dec-12 0:46 
GeneralReally not a web service? PinmemberPankaj Nikam5-Jul-12 22:04 
GeneralRe: Really not a web service? [modified] PinmemberSmartCodar6-Jul-12 23:49 
GeneralMy vote of 5 PinmemberKamil Zmeskal29-Jun-12 4:14 
Simple and easy!

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Mobile
Web03 | 2.8.140916.1 | Last Updated 29 Jun 2012
Article Copyright 2012 by SmartCodar
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid