C# 如何使用Linq将数据从数据库中提取到Gaia自动完成器中?

C# 如何使用Linq将数据从数据库中提取到Gaia自动完成器中?,c#,asp.net,linq,activerecord,C#,Asp.net,Linq,Activerecord,我是linq的新手。我使用的是Gaia ajax自动完成器。我想显示来自数据库表的搜索项。我想使用linq/活动记录来完成它。我该怎么做 您需要使用web服务,以便使用自动补全器填充文本字段。 试试这个 using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Linq; using System.Web; using System.Web.Se

我是linq的新手。我使用的是Gaia ajax自动完成器。我想显示来自数据库表的搜索项。我想使用linq/活动记录来完成它。我该怎么做

您需要使用web服务,以便使用自动补全器填充文本字段。 试试这个

    using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Web.Script.Services;



namespace YourProject
{
    /// <summary>
    /// Summary description for WebService
    /// </summary>
    // [ScriptService]
    //[System.Web.Script.Services.ScriptService()]
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [ToolboxItem(false)]
    // 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 WebService : System.Web.Services.WebService
    {

        protected void Page_Load(object sender, EventArgs e)    
        {

        }
        [WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }
        [WebMethod]
        public string[] GetCompletionList(string prefixText)
        {

            string sql = "Select productname from F_Product Where productname like @prefixText ";
            SqlDataAdapter da = new SqlDataAdapter(sql, System.Configuration.ConfigurationManager.ConnectionStrings["dbConnectionString"].ConnectionString);
            da.SelectCommand.Parameters.Add("@prefixText", SqlDbType.VarChar, 50).Value = prefixText + "%";
            DataTable dt = new DataTable();
            da.Fill(dt);
            string[] items = new string[dt.Rows.Count];
            int i = 0;
            foreach (DataRow dr in dt.Rows)
            {
                items.SetValue(dr["productname"].ToString(), i);
                i++;
            }
            return items;
        }
 }
}
使用系统;
使用系统集合;
使用系统组件模型;
使用系统数据;
使用System.Linq;
使用System.Web;
使用System.Web.Services;
使用System.Web.Services.Protocols;
使用System.Xml.Linq;
使用System.Data.SqlClient;
使用System.Web.Script.Services;
名称空间项目
{
/// 
///WebService的摘要描述
/// 
//[脚本服务]
//[System.Web.Script.Services.ScriptService()]
[WebService(命名空间=”http://tempuri.org/")]
[WebServiceBinding(ConformsTo=WsiProfiles.BasicProfile1_1)]
[ToolboxItem(假)]
//要允许使用ASP.NET AJAX从脚本调用此Web服务,请取消注释以下行。
[System.Web.Script.Services.ScriptService]
公共类WebService:System.Web.Services.WebService
{
受保护的无效页面加载(对象发送方、事件参数e)
{
}
[网络方法]
公共字符串HelloWorld()
{
返回“你好世界”;
}
[网络方法]
公共字符串[]GetCompletionList(字符串前缀)
{
string sql=“从F_产品中选择产品名称,其中产品名称类似于@prefixText”;
SqlDataAdapter da=新的SqlDataAdapter(sql,System.Configuration.ConfigurationManager.ConnectionString[“dbConnectionString”].ConnectionString);
da.SelectCommand.Parameters.Add(“@prefixText”,SqlDbType.VarChar,50)。Value=prefixText+“%”;
DataTable dt=新的DataTable();
da.填充(dt);
string[]items=新字符串[dt.Rows.Count];
int i=0;
foreach(数据行dr在dt.行中)
{
items.SetValue(dr[“productname”].ToString(),i);
i++;
}
退货项目;
}
}
}
如果你觉得它有用,请将它标记为你的答案,否则请让我知道。。。我一定会帮你的