返回首页

{A}{S0}简介
这是非常简单的代码,这使得自​​动与数据库的完整组合。
这是非常有用。首先,你不必了解Ajax功能,只要下载AJAX控件工具包CodePlex上,并按照我,然后享受。此外,当有许多行,你可以在文本框中键入单词的一部分,那么它可以提供所有类似的话。背景:什么是Ajaxcontroltoolkit?
ASP.NET AJAX控件工具包是一个开源项目的Microsoft ASP.NET AJAX框架之上,并包含超过30个控制,使您可以轻松地创建丰富,交互式网页。如果你想了解它的更多信息,请访问。使用代码
它的第一步,你必须下载} {A3 AjaxControlToolkit。
你必须去和ajaxcontroltoolkit下载,然后复制ajaxcontroltoolkit并将其粘贴到bin文件夹,右键单击解决方案,选择添加引用,在Bin文件夹中浏览"选项卡,双击,双击ajaxcontroltoolkit,然后在生成菜单上的GT;单击重建。数据库新建查询

CREATE TABLE [dbo].[tblCustomer](

	    [CompanyName] [nvarchar](500) NULL,

	    [ID] [int] IDENTITY(1,1) NOT NULL

        ) ON [PRIMARY]



insert into dbo.tblCustomer(CompanyName) values('calemard')

insert into dbo.tblCustomer(CompanyName) values('dantherm')

insert into dbo.tblCustomer(CompanyName) values('dango dienenthal')

insert into dbo.tblCustomer(CompanyName) values('daewoo')

insert into dbo.tblCustomer(CompanyName) values('daim engineering')

的Visual Studio 2008 - NET 3.5:创建网站和它命名为"自动完成",创建Web窗体,并将其命名它AutoComplete.aspx,在HTML视图,编写该代码
,但有一个C#和VB之间的差别不大。在这一节。这在底部的代码为C#编码。如果你是一个VB程序员,请修改页面标签2节一:正确的语言= VB二:正确的CodeFile ="; AutoComplete.aspx.vbquot";{C}对于样式表(CSS文件)创建样式表:解决方案GT;右键GT;添加新项GT; Web服务GT;产品名称:stylesheet.css中语言:Visual Basic或C#GT; stylesheet.css中(档案)GT CTRL A(全选)GT;删除本节(见下文)GT;选择此代码GT; CTRL C GT;stylesheet.css中(文件)GT; CTRL V(粘贴)
/*AutoComplete flyout */

.autocomplete_completionListElement

{

    margin : 0px!important ;

    background-color : inherit ;

    color : windowtext ;

    border : buttonshadow ;

    border-width : 1px ;

    border-style : solid ;

    cursor : 'default' ;

    overflow : auto ;

    height : 200px ;

    font-family : Tahoma ;

    font-size : small ;

    text-align : left ;

    list-style-type : none ;

    }

/* AutoComplete highlighted item */

.autocomplete_highlightedListItem

   {

    background-color : #ffff99 ;

    color : black ;

    padding : 1px ;

    }



    /* AutoComplete item */

.autocomplete_listItem

    {

    background-color : window ;

    color : windowtext ;

    padding : 1px ;

   }
对于VB创建Web服务:解决方案GT;右键GT;添加新项GT; Web服务GT;产品名称:AutoComplete.asmx语言:Visual Basic中到GT的App_Code GT; AutoComplete.vb 对于C#Web服务解决方案:GT;右键GT,添加新的项目GT; Web服务GT;产品名称:AutoComplete.asmx语言:C#到GT的App_Code GT; AutoComplete.cs
// (c) Copyright Microsoft Corporation.

// This source is subject to the Microsoft Public License.



// See http://www.microsoft.com/opensource/licenses.mspx#Ms-PL.

// All other rights reserved.

using System;

using System.Collections;

using System.Linq;

using System.Web;

using System.Web.Services;

using System.Web.Services.Protocols;

using System.Xml.Linq;

using System.Collections.Generic;

using System.Data;

using System.Data.SqlClient;



///<summary>

/// Summary description for AutoComplete

///</summary>



[WebService(Namespace = "http://tempuri.org/")]

[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]

// To allow this Web Service to be called from script, using ASP.NET AJAX, 

// uncomment the following line.

[System.Web.Script.Services.ScriptService]

public class AutoComplete : System.Web.Services.WebService {



    public AutoComplete () {



        //Uncomment the following line if using designed components

        //InitializeComponent();

    }



    [WebMethod]

    public string[] GetCompletionList(string prefixText, int count)

    {

        //ADO.Net

        SqlConnection cn =new SqlConnection();

        DataSet ds = new DataSet();

        DataTable  dt = new DataTable();

        String strCn = "data source=.;Initial Catalog=MyDB;Integrated Security=True";

        cn.ConnectionString = strCn;

        SqlCommand cmd = new SqlCommand();

        cmd.Connection = cn;

        cmd.CommandType = CommandType.Text;

        //Compare String From Textbox(prefixText) AND String From 

        //Column in DataBase(CompanyName)

        //If String from DataBase is equal to String from TextBox(prefixText) 

        //then add it to return ItemList

        //-----I defined a parameter instead of passing value directly to 

        //prevent SQL injection--------//

        cmd.CommandText = "select * from tblCustomer Where CompanyName like @myParameter";

        cmd.Parameters.AddWithValue("@myParameter", "%" + prefixText + "%");



        try

        {

            cn.Open();

            cmd.ExecuteNonQuery();

            SqlDataAdapter da = new SqlDataAdapter(cmd);

            da.Fill(ds);

        }

        catch

        {

        }

        finally

        {

            cn.Close();

        }

        dt = ds.Tables[0];



	    //Then return List of string(txtItems) as result

        List<string> txtItems =new List<string>();

        String  dbValues;



        foreach (DataRow row  in dt.Rows)

        {

             //String From DataBase(dbValues)

            dbValues = row["CompanyName"].ToString();



            dbValues = dbValues.ToLower();

            txtItems.Add(dbValues);

        }



        return txtItems.ToArray();

    }

}
摘要
GetCompletionList是一个函数,渔获量作为字符串参数,prefixText和计数为int。
当你键入一些字符,它们将被保存在prefixText和字符的数量计数保存。和结束时,函数返回的字符串列表(你的角色,它们是相似的)已获得如下:
我写了一些代码ADO.NET第prefixText,这是您键入的字符在文本框中。
此外,这些行已筛选,我定义了一个参数,而不是直接传递价值防止SQL注入。
我创建字符串数据类型的列表txtItems,我们可以节省的话,我们希望。然后,我在foreach循环中转换成tolower的, 我添加这些值,我的结果值(txtItems),我终于回到txtItems。尝试分步转到 andnbsp下载AjaxControlToolkit文件。复制的文件夹quot; AjaxControlToolkit.Dllquot;所有dependers,有18个对象,您的网站的Bin文件夹(C:\自动完成\ BIN)。右键单击解决方案,然后选择"刷新",然后点击右键再次单击"添加引用",然后单击"浏览"选项卡,双击Bin文件夹中,并双击上ajaxcontroltoolkit,生成菜单上的GT,单击重建。Createnbsp;数据库和表像上面,并添加一些常用词的行。创建Web窗体,并命名为:"AutoComplete.aspxquot;在HTML视图,写一些像上面的代码。 (这应该是完全一样,因为这部分是大小写敏感的,我的代码)。创建一个WebService:
解决方案GT;右键GT GT的新项目; Web服务GT名称:AutoComplete.asmx语言:C#或VB
到GT的App_Code GT; AutoComplete.cs对于一些动画效果,我添加了样式表,使用它用户友好。如果你是一个VB程序员,使用thenbsp; VB范例,否则,使用C#范例。运行程序,并在文本框中写一个字,包含2个或更多字符作为DA,你会看到一个列表的话,你的性格是相似的。反馈
感觉自由离开任何对本文的反馈,它是很高兴看到yournbsp;意见和表决有关此代码。如果您有任何问题,请不要犹豫,问我在这里。

回答

评论会员:shaheen_mix 时间:2012/01/27
漂亮
评论会员:MahsaHassankashi 时间:2012/01/27
谢谢
评论会员:Deepanjan德伊 时间:2012/01/27
很不错的工作,感谢
评论会员:MahsaHassankashi 时间:2012/01/27
你重新欢迎,我试着尽我所能
评论会员:jane_yu00 时间:2012/01/27
嗨,你为什么在建议中的内容的转变呢?反正解决呢?
我没有改变任何代码来回下载。
但我用VS2010和。NET 4.0版本。
非常感谢您的帮助
评论会员:。manavrohit 时间:2012/01/27
您可以轻松地了解http://www.aspdotnetcodes.com/AutoComplete_From_Database.aspx .............{ BR控制}
修改12月12日'11
评论会员:。Sovan库马尔DAS 时间:2012/01/27
您好,
我开始使用自动完成剑道UI。能否请你帮我建立使用剑道UI?

Sovan
评论会员:尼克J鸟 时间:2012/01/27
在代码中有一个错误,停止的Web服务被称为。位:

VAR目标= behavior.get_completionList()
并改变它behaviour.getcompletionlist

我与NET4 AJAX使用VS2010的和需要添加在母版页:

<form id="form1" runat="server">

<ajaxToolkit:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">

  <Services>

          <asp:ServiceReference Path=" /AutoComplete.asmx" />

     </Services>

</ajaxToolkit:ToolkitScriptManager>

和它的工作请客!

感谢
评论会员:。MahsaHassankashi 时间:2012/01/27
提供意见感谢
我将检查
评论会员:。kneo1611 时间:2012/01/27
后做同样的事情做。 Web服务是不是被解雇
评论会员:!MahsaHassankashi 时间:2012/01/27
AJAX控件工具包的版本应与您的版本NET框架
。如果您使用。NET 3.5,那么你应该获取并安装AjaxControlToolkit.Binary.NET35.zip
如果您的问题没有得到解决,随时要求再次
评论会员:尼克J鸟 时间:2012/01/27
见上面我的回答 - 是在代码中的拼写错误,在我的例子所示,您可能需要修改你的脚本经理。 。希望有帮助
评论会员:!AMRRABIE 时间:2012/01/27
UR如此性感
评论会员:!MahsaHassankashi 时间:2012/01/27
消息应相关文章不是别的{S4}
评论会员:理查德维拉 时间:2012/01/27
对不起
我的英语水平,但它不是我的母语。 这是谷歌翻译。
因为改变"的GetCustomers"webservice的ServiceMethod名称是行不通的。

帮我这个问题,我有工作,但我需要创建更多的自动完成"的员工,产品,等"

谢谢
评论会员:MahsaHassankashi 时间:2012/01/27
您好亲爱的,
你改变您的函数的名称吗?
后节的WebMethod()
如果没有请尝试改变这个签名
Public Function GetCompletionList(ByVal prefixText As String, _

    ByVal count As Integer) As String()

任何你想要的。
如果您的问题仍然存在,再问
评论会员:。samabc 时间:2012/01/27
我的票是5超过了5(保持)
您好
好efeort和自动完成的工作。
我搜索自动完成SQL和VS - 2008(IDE)
最后,我得到了这link.but我想建议你,请上传您的网页此功能
一段时间用户下载你的代码,他们只检​​查你的形式,这一次他们都达不到预期reult因此,我建议你。请更新您的数据的基础上的内容复制并粘贴数据库脚本。
三江源非常

我张贴的数据库脚本在这里
SET ANSI_NULLS的上GOSET QUOTED_IDENTIFIER ONGOIF NOT EXISTS(SELECT * FROM WHERE OBJECT_ID = OBJECT_ID(N'[DBO]。[tblCustomer]"sys.objects中)和类型(N'U'))动工CREATE TABLE [DBO]。[tblCustomer]([公司名称] [为nvarchar](500)NULL,[ID] [INT] IDENTITY(1,1)NOT NULL,)ON [PRIMARY]修改于2011年9月21日(星期三),8:02
评论会员:MahsaHassankashi 时间:2012/01/27
这是一个专家的想法,感谢分享您的意见。
我会考虑一下。
评论会员:MahsaHassankashi 时间:2012/01/27
PLZ我想我看到的形式设计如何帮助{中六} {七}
评论会员:会员8085246 时间:2012/01/27
您好亲爱的Mohanapriya,
你可以看到它后,数据库查询
评论会员:MahsaHassankashi 时间:2012/01/27
谢谢分享。这对我帮助很大
评论会员:。shwetaraje 时间:2012/01/27
我尽量做到我的最好的
评论会员:MahsaHassankashi 时间:2012/01/27
文章真的是非常有帮助的问题,我面对加入的autocompletetoolScript给其中的错误,请参阅此链接
http://www.asp.net/ajaxlibrary/act.ashx
评论会员:naresh_tatikonda 时间:2012/01/27
。你不客气,我尝试尽我所能
什么是您的问题正是在这个环节?你能解释更多的