Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 获取具有相同名称值列的所有记录-LINQ_C#_.net_Winforms_Linq - Fatal编程技术网

C# 获取具有相同名称值列的所有记录-LINQ

C# 获取具有相同名称值列的所有记录-LINQ,c#,.net,winforms,linq,C#,.net,Winforms,Linq,我有一个WindowsForms应用程序。在这个表单中,我需要向用户显示 表取决于他的数据输入。 我有一张儿童桌和一个按钮。。当用户单击该按钮时,我显示 给他一个弹出窗口,让他输入孩子的名字。。现在我的桌子上有一些 具有相同子名称的记录。。当用户输入例如“john”作为孩子的名字时,我想向他显示所有同名的孩子记录 我尝试了以下代码: var query = db.ChildrenTbl.Where(c => c.ChildName.ToLower().Contains(childName)

我有一个WindowsForms应用程序。在这个表单中,我需要向用户显示 表取决于他的数据输入。 我有一张儿童桌和一个按钮。。当用户单击该按钮时,我显示 给他一个弹出窗口,让他输入孩子的名字。。现在我的桌子上有一些 具有相同子名称的记录。。当用户输入例如“john”作为孩子的名字时,我想向他显示所有同名的孩子记录

我尝试了以下代码:

var query = db.ChildrenTbl.Where(c => c.ChildName.ToLower().Contains(childName));
该代码:

    var query = from child in db.ChildrenTbl
                where child.ChildName.ToLower().Contains(childName)
                select child;
但这两个主题都只给出了一张唱片,而不是所有的唱片都有同一个孩子的名字。。
有什么问题吗?

您能从数据库中发布一些示例数据吗?这可能只是一个上/下大小写问题。请尝试:
var query=db.childrentb.Where(c=>c.ChildName.ToLower().Contains(ChildName.ToLower())
@MikeCorcoran我在帖子中忘了写ToLower()方法。。所以我编辑了我的问题,现在我给出的代码看起来就像我在应用程序中写的一样。。还有一件事。。事实并非如此,因为我正在将用户的给定输入转换为更低的输入letters@Elior如果您尝试执行的搜索是完全匹配的搜索,那么将“contains()”更改为“Equals()”将起作用。但是,它不会像SQL“Like”语句那样工作,即搜索“john”不会同时给出“john”和“johnson”。如果您想执行类似的操作,而“Contains”方法不起作用,可以尝试使用“String.IndexOf”方法。您可以使用Where(c=>c.ChildName.ToLower().IndexOf(ChildName.ToLower().Trim())!=-1)。此条件应返回包含您输入的名称的所有字符串。