2010-06-18 32 views
5

默認情況下是否可以設置實體框架字符串比較不區分大小寫?使實體框架不區分大小寫

如果我使用

string.StartsWith("stringToCompare", StringComparison.CurrentCultureIgnoreCase) 

它的工作原理。但是當我需要使用

string.Contains("strigToCompare") 

它沒有過載。

+1

SQL無論如何不區分大小寫,而EF只是委託它的查詢它SQL,EF不能控制大小寫,我認爲這是你的數據庫的整理問題。 – 2012-02-12 05:24:44

回答

3

您可以簡單地改變這兩個領域爲大寫的情況:

String stringToCompare = "Some String"; 

string.ToUpper().Contains(stringToCompare.ToUpper()) 

這將使得搜索不區分大小寫的所有情況下轉換爲上。當然,ToLower()也可以。

+0

這將打破測試「Foo」和「Foobar」。因爲foobar包含foo。這可能不是你要找的平等。 – Jafin 2013-01-17 03:41:46

+4

使用Contains()函數時,海報請求不區分大小寫。 「Foo」和「Foobar」示例將返回「true」,這是期望的結果。 – 2013-02-20 04:02:08