Click here to Skip to main content
11,496,146 members (776 online)
Click here to Skip to main content

ASP.NET Ajax AutoCompleteExtender Without Using Web Service

, 29 Jun 2012 CPOL 40.7K 16
ASP.Net Ajax AutoCompleteExtender without using Web Service
The site is currently in read-only mode for maintenance. Posting of new items will be available again shortly.

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. Pin
Greg Pierce7-Aug-14 12:51
memberGreg Pierce7-Aug-14 12:51 
GeneralThank you Pin
Tuduru Sai Krishna21-Jan-14 20:08
memberTuduru Sai Krishna21-Jan-14 20:08 
Questionautoextender is not working Pin
abhinav_8917-Jul-13 22:28
memberabhinav_8917-Jul-13 22:28 
GeneralMy vote of 5 Pin
Reza Ahmadi28-Jun-13 1:39
memberReza Ahmadi28-Jun-13 1:39 
GeneralMy vote of 4 Pin
musthaan19-Mar-13 4:13
membermusthaan19-Mar-13 4:13 
QuestionGood Article Pin
Alireza_136222-Dec-12 1:46
memberAlireza_136222-Dec-12 1:46 
GeneralReally not a web service? Pin
Pankaj Nikam5-Jul-12 23:04
memberPankaj Nikam5-Jul-12 23:04 
GeneralRe: Really not a web service? [modified] Pin
SmartCodar7-Jul-12 0:49
memberSmartCodar7-Jul-12 0:49 
GeneralMy vote of 5 Pin
Kamil Zmeskal29-Jun-12 5:14
memberKamil Zmeskal29-Jun-12 5:14 

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 | Terms of Use | Mobile
Web01 | 2.8.150520.1 | Last Updated 29 Jun 2012
Article Copyright 2012 by SmartCodar
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid