我在使用自动完成功能时遇到问题

本文关键字:功能 成功 遇到 问题 | 更新日期: 2023-09-27 18:21:42

感谢您阅读我的问题我正在尝试为文本框设置自动完成,但没有得到我想要的东西,我想我的 linq 一定有某种问题
这是我的代码

 private AutoCompleteStringCollection GetLinqDataSourceForString(string p)
    {
        var c = new AutoCompleteStringCollection();
        c.Add(p + Getauto(txtSearch.Text));
        return c;
    }
private void txtSearch_TextChanged(object sender, EventArgs e)
    {
        txtSearch.AutoCompleteSource = AutoCompleteSource.CustomSource;
        txtSearch.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
        txtSearch.AutoCompleteCustomSource = GetLinqDataSourceForString(txtSearch.Text);
    } 

这是我的 linq,它应该从数据库获取数据

    public string AutoUpdate(string _search)
    {
        using (var context = new Phone_BookEntities1())
        {
            var c = (from d in context.Cantacts
                     where d.Cantact1 == _search
                     select d.Cantact1).SingleOrDefault();
            return c;
        }
     }

我的问题在哪里?请帮忙,Tnx

我在使用自动完成功能时遇到问题

如果我们写(猫(,它将键入(猫猫(

好吧,p + Getauto(txtSearch.Text)解释说,您可能不想在此处附加pGetauto应该使用p

当我们输入 (c( 它应该带来猫时,它不会给我们任何选择,但它不会,你必须输入所有单词

好吧,您的where正在进行完整的比较

where d.Cantact1 == _search

这可能需要使用StartsWith

where d.Cantact1.StartsWith(_search)