如何在Linq to SQL中区分两个字符串?

时间:2010-04-08 14:55:15

标签: c# linq-to-sql case-sensitive

如何在Linq to SQL(在where查询中)区分大小写两个字符串?

感谢。

3 个答案:

答案 0 :(得分:4)

您不能仅在LINQ to SQL中执行此操作。来自文档:

  

不支持的System.String方法   一般

     

查询不考虑SQL Server   可能生效的排序规则   服务器,因此将提供   文化敏感,不区分大小写   默认比较。这种行为   与默认值不同,   .NET的区分大小写的语义   框架。

执行此操作的方法是在您自己的查询中指定排序规则:

Select...
From Table
Where Column = "Value" COLLATE SQL_Latin1_General_CP1_CS_AS

请注意,我提供的排序规则指定区分大小写的匹配(CS)。

答案 1 :(得分:3)

您必须在SQL Server(或您使用的任何DBMS)中使问题字段区分大小写。如果您使用SQL Server,请查找Collat​​ion字段属性,在那里您可以设置区分大小写。

答案 2 :(得分:2)

如何在Linq to SQL(在where查询中)区分大小写两个字符串?

Select * from tblemp Where empname='nAveen' COLLATE SQL_Latin1_General_Cp1_CS_AS