【问题标题】:How to make .Contains() search for the texted typed in a textbox anywhere in the field C#如何使 .Contains() 搜索在字段 C# 中任何位置的文本框中键入的文本
【发布时间】:2015-11-16 01:58:18
【问题描述】:

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

谢谢

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()) ))
}

【问题讨论】:

  • 包含应该做的工作。你能提供一个你想要的例子,但显示的是什么?
  • 请将您的示例更新为独立的 - 包括输入的常量值,并尝试从发布的示例中删除自定义类型。到目前为止,代码应该做你想做的事,没有调试器附加到你的代码的人没有办法回答这个问题。

标签: c# entity-framework linq contains


【解决方案1】:

尝试在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);
     }
}

【讨论】:

  • 谢谢 X-TECH。我也试过这个。我的问题看起来与文本框自动完成属性有关。 Coll 数组包含正确的信息,但建议不会反映在文本框上,它仅在搜索的文本是该字段中的第一个单词时提出建议。
【解决方案2】:

尝试不使用 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() 确实返回了正确的记录。我复制了代码并将其放在一个按钮中并调试+添加观察和观察。我想我必须检查文本框属性,即自动完成。
  • 很高兴我提供了帮助,如果这足以作为答案,请将此答案标记为正确的答案
猜你喜欢
  • 1970-01-01
  • 2017-02-28
  • 2016-11-23
  • 1970-01-01
  • 2018-06-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多