如何使 .Contains() 搜索在字段 C# 中任意位置的文本框中键入的文本

How to make .Contains() search for the texted typed in a textbox anywhere in the field C#

在下面的代码中,.Contains() 只有 return 以我在 TextBox 中键入的文本开头的字符串。我希望它 return 在搜索字段中的任何位置包含该字符串的所有记录。请告知我如何获得 Contains() 到 return 的值,也欢迎使用其他方法

谢谢

using (var GC = new GroundCommanderEntities())            
{                    
     foreach (var Current in GC.IMF_Extensions.Where(filter => filter.Description.Contains(Search_txt.Text) ))
     {
          string sss = Current.Description;
          Coll.Add(sss);
     }
     // tried same result foreach (var Current in GC.IMF_Extensions.Where(filter => filter.Description.Contains(Search_txt.Text.Trim()) || filter.Description.StartsWith(Search_txt.Text) || filter.Description.EndsWith(Search_txt.Text)))
     // tried same result foreach (var Current in GC.IMF_Extensions.Where(filter => filter.Description.Contains(Search_txt.Text.Trim()) ))
}

试试不用 Linq 的更简单的方法:

using (var GC = new GroundCommanderEntities())            
{                    
    foreach (var Current in GC.IMF_Extensions)
    {
        if (Current.Description.Contains(Search_txt.Text))
        {
            Coll.Add(Current.Description);
        }
    }
}

尝试对 Contains 之前的两个字符串使用 ToLower。应该可以了。

using (var GC = new GroundCommanderEntities())            
{                    
     foreach (var Current in GC.IMF_Extensions.Where(filter => filter.Description.ToLower().Contains(Search_txt.Text.ToLower())))
     {
          Coll.Add(Current.Description);
     }
}