Linq表达式区分大小写?

时间:2013-12-10 19:37:23

标签: c# linq linq-to-sql

到目前为止,我已经阅读过Linq(以及C#)已经进行了区分大小写的检查。

如何将其设为敏感内容?

这是我的代码,它返回0行,我在数据库中有一条记录

bool result = Employee.SearchBy(x => x.Name.Contains("johN schulZ"));

并且返回true:

bool result = Employee.SearchBy(x => x.Name.ToLower().Contains("johN schulZ".ToLower()));

后一种解决方案正在运作,但我想知道是否有更方便的方法。

2 个答案:

答案 0 :(得分:6)

使用数据库时的区分大小写(我假设Linq2EF或Linq2Sql)是数据库的一个功能。您应该将列/数据库的排序规则更改为不区分大小写的排序规则。

请参阅:

http://technet.microsoft.com/en-us/library/ms190920.aspx

http://technet.microsoft.com/en-us/library/ms175835.aspx

答案 1 :(得分:0)

这完全符合我的要求 - 谢谢大家。

bool result = Employee.SearchBy(x => x.Name.Equals("johN schulZ", StringComparison.CurrentCultureIgnoreCase));

or

bool result = Employee.SearchBy(x => x.Name.Contains("johN schulZ", StringComparison.CurrentCultureIgnoreCase));