默认情况下,==在c#linq中不区分大小写

时间:2017-02-01 07:35:58

标签: c# sql sql-server linq

我无法理解为什么:

在db中,我在Members表中记录了Name =“Bob”

  ImageView imageView = (ImageView) findViewById(R.id.my_image_view);

  Glide.with(this).load(retrieveContactPhoto(someID)).into(imageView);

1 个答案:

答案 0 :(得分:11)

问题与LINQ无关。 LINQ只是一种抽象机制,允许您使用相同的语法查询不同的数据源。如果您在默认情况下使用MSSQL,则它将具有SQL_Latin1_General_CP1_CI_AS排序规则,这不区分大小写(请注意名称中的CI)。因此,当您的LINQ查询转换为SQL(select * from Members where Name = 'BOB')并运行它将返回结果。所以,如果你想用它执行区分大小写的查找,基本上你可能需要change the collation你的SQL服务器数据库到一个区分大小写的数据库。