微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

LINQ区分大小写

如何解决LINQ区分大小写

LINQ没有区分大小写的概念,只关心布尔值评估。因此,如果您想忽略大小写,则应执行以下操作:

query = query.Where(x => (x.Name.ToLower().Contains(Name.ToLower())));

您可能会希望将a传递CultureInfo给ToLower()(或使用ToLowerInvariant()),并且可能想要缓存的结果,Name.ToLower()以便不必执行该操作可能潜在的多次,但这应该可以帮助您入门。

解决方法

如何根据情况使LINQ区分大小写和不区分大小写?

我正在使用sql server 2008和Entity Framework 4.0。

我更改了COLLATION以使SQL Server区分大小写。因此对于以下情况:

 query = query.Where(x => x.Username == username);

它很棒。但是,当按主题(或名称或类似名称)搜索时,我需要能够 忽略大小写而 从数据库中提取数据,如下所示:

query = query.Where(x => (x.Name.Contains(Name)));

当记录是“ TestString”并且我正在寻找“ test”或“
Test”或类似的东西时,这是行不通的。我将如何做到这一点,以便在文本中找到文本或字符串的一部分?谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。