【发布时间】:2020-01-30 12:23:23
【问题描述】:
我有一个简单的DbContext 和Set<> 的用户。
我有一个带有身份验证的 ASP.NET Core Web API。
public User Authenticate(string username, string password)
{
var user = _ctx.Users.FirstOrDefault(x =>
x.Username.Equals(username, StringComparison.OrdinalIgnoreCase) &&
x.Password.Equals(password, StringComparison.OrdinalIgnoreCase));
bool exists = _ctx.Users.Any(x =>
x.Username.Equals(username, StringComparison.OrdinalIgnoreCase) &&
x.Password.Equals(password, StringComparison.OrdinalIgnoreCase));
bool usernameCorrect = _ctx.Users.First().Username.Equals(username, StringComparison.OrdinalIgnoreCase);
bool passwordCorrect = _ctx.Users.First().Password.Equals(password, StringComparison.OrdinalIgnoreCase);
if (user == null)
{
return null;
}
[...]
}
问题是_ctx.Users.FirstOrDefault返回null。
你可能认为这很简单:“条件不匹配”
但是:
这是怎么回事?
【问题讨论】:
标签: c# sqlite entity-framework-core asp.net-core-webapi