LINQ sorgusu veritabanı bağlamında yürütülürse Contains()
, LIKE
işleç için bir çağrı eşlenir :
.Where(a => a.Field.Contains("hello"))
olur Field LIKE '%hello%'
. LIKE
Operatör varsayılan olarak duyarsız olduğu, ancak bu değiştirilebilir sütunun harmanlama değiştirme .
LINQ sorgusu .NET bağlamında yürütülürse, IndexOf () kullanabilirsiniz , ancak bu yöntem LINQ to SQL'de desteklenmez.
LINQ to SQL , büyük olasılıkla SQL sunucusunun kültürleri .NET ile aynı şekilde işlediğini garanti edemediğinden, parametre olarak bir CultureInfo alan yöntemleri desteklemez . Çünkü bu tamamen doğru değildir does desteği StartsWith(string, StringComparison)
.
Bununla birlikte, LIKE
LINQ to SQL'de değerlendirilen bir yöntemi ve .NET'te büyük / küçük harfe duyarlı olmayan bir karşılaştırmayı desteklediği görülmemektedir, bu da büyük / küçük harfe duyarsız Contains () işlevini tutarlı bir şekilde yapmayı imkansız hale getirmektedir.