3

急性を考慮せずに、純粋な LINQ-to-entities で String の Contains() メソッドを使用することは可能ですか?

例:

table Messages
---------------------------
  MessageId     Body
     1          Hello John how are you
     2          Hi Jóhn sup?
        ...

このクエリが必要です:

var messages = db.Messages.Where(p => p.Body.Contains("John"));

最初のメッセージだけでなく、2 番目のメッセージも返ってきます。

これが正しいアプローチでない場合 (含む)、どれですか?

SQL Server を使用しています。

また、同様の別の質問がここにあります: 文字列比較でアクセント付き文字を無視する

彼は 2 つの文字列 ("Equals" または "CompareTo") を比較しようとしているため、違います。私は "Contains" を使用しようとしています。

4

1 に答える 1

1

答えはしばらくの間コメントにありました。ここにも答えがあります:

アクセントを区別しないようにするには、データベースの照合順序を「_AI」で終わるものに変更します(または、大文字と小文字を区別しないようにする場合は「_CI_AI」)。

于 2015-08-03T17:06:55.667 に答える