我有两个不同的运行时错误

Mos*_*ari 0 c# runtime-error

我首先得到两个运行时错误({"序列包含多个元素"} ==> System.InvalidOperationException)当它出现不止一次时以及当我想删除我在文本框中写的内容时该怎么办? ?

这是我的代码

 private AutoCompleteStringCollection GetLinqDataSourceForString(string p)
    {
        var c = new AutoCompleteStringCollection();
        c.Add( Getauto(p));
        return c;
    }

   private void txtSearch_TextChanged(object sender, EventArgs e)
    {
        txtSearch.AutoCompleteSource = AutoCompleteSource.CustomSource;
        txtSearch.AutoCompleteMode = AutoCompleteMode.Suggest;
          txtSearch.AutoCompleteCustomSource = GetLinqDataSourceForString(txtSearch.Text);
      } 
Run Code Online (Sandbox Code Playgroud)

而这一个是在另一层从数据库获取信息

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

Adi*_*oso 6

SingleOrDefault如果您的序列有多个元素,则会抛出 如果您打算在表格中找到第一个匹配的联系人,请FirstOrDefault改用.