如何匹配区分大小写的用户名和密码 - c#

我正在尝试使用sql server在C#中使用linq匹配用户名和密码

    //verify the user.
    var UserDetails = 
    (from user in con.ios_Users
    where (user.LOGIN == LogReq.userName && user.PASSWORD == LogReq.password && user.ACTIVE != 0)

    select new
    {
        user.ID,
        user.TYPEDESCR,
        user.USERNAME
    }).ToList();                     

在上面的代码中,如果我传递用户名-演示和密码-demo123,但它返回数据用户数据,但在数据库中,用户名是-DeMo,密码是DeMo123
如何使此linq查询区分大小写:(

提前致谢 :)

参考方案

似乎是数据库排序规则问题:https://docs.microsoft.com/en-us/sql/relational-databases/collations/collation-and-unicode-support?view=sql-server-ver15

SQL Server中的归类为数据提供排序规则,大小写和重音敏感性属性。与字符数据类型(例如char和varchar)一起使用的排序规则规定了代码页以及可以为该数据类型表示的相应字符。

以上是针对MsSql的,但它适用于大多数主流数据库。

如果使用的是linqToSql,则将linq转到查询并在数据库中执行,因此实际比较发生在SQL端。

因此,您需要在表上修复排序规则。

ASP.NET Web API 2中AuthorizeAttribute发生了什么变化? - c#

我已经将项目和一组单元测试从ASP.NET Web API升级到ASP.NET Web API 2。我们将自定义DelegatingHandler用于自定义身份验证机制。它将Thread.CurrentPrincipal和HttpContext.Current.User设置为适当的System.Security.Claims.ClaimsPrincipal。…

无法将路线映射为行动,ASP.NET Core Web API - c#

我正在研究Web API项目,并且遇到以下问题:我尝试使用以下网址(https://localhost:44328/api/Users/GetUserBy?username=myusername&password=mypassword)调用名为“ GetUserBy”的操作方法,但在浏览器中收到的结果如下所示:{"id":[�…

Json参数转换继承Web API 2 - javascript

我正在使用MS Web API 2使用ajax从我们的网页接收呼叫。然后,我有2个类:Subscriber和externalSubscriber。订户包含非常基本的数据,例如名称和ID。外部订户继承自订户并添加基本数据,例如地址和电子邮件。我有一个api方法来编辑这样定义的订户的数据:public IHttpActionResult PutSubscribe…

将多个对象从Angular控制器发布到Web API 2 - c#

我能够从我的角度控制器发送原始json对象,该对象在我的Web api方法中反序列化为已知类型。很好,但是我现在需要能够在同一请求中发送其他参数,这些参数可以是json对象或简单类型,例如string或int。我看过诸如this之类的文章,它们准确地描述了我的问题,但是它们是从代码隐藏而不是客户端发送请求的。我试图构造一个json数组并将其发送进去,但收到以…

Linq-在嵌套集合中查找元素 - c#

我有一个通用列表-SupportedTypeGroups。每个SupportedTypeGroup都有SupportedTypes属性(SupportedType的通用列表)。如何构造Linq查询以使用所需名称查找SupportedType? 参考方案 var result = SupportedTypeGroups .SelectMany(g => …