Entity Framework Core — чувствительность к регистру не работает при сравнении двух строкAndroid

Форум для тех, кто программирует под Android
Anonymous
Entity Framework Core — чувствительность к регистру не работает при сравнении двух строк

Сообщение Anonymous »

Это есть в моем приложении:

Код: Выделить всё

    public class PostLoginData
{
public string email { get; set; }
public string password { get; set; }
}
И эта конечная точка, которая проверяет, существует ли пользователь:

Код: Выделить всё

HttpPost]
[Route("SubmitLogin")]
public async Task SubmitLogin([FromBody] PostLoginData data)
{

var ctx = new SmurfdbContext();

TblUser user = await ctx.TblUsers.Where(x => x.Email == data.email && x.Password == data.password).FirstOrDefaultAsync();

if (user != null)
{

if (user.VerifiedEmail == true)
{
return Ok(new { success = true, id = user.Guid, image = user.AvatarImage, avatarIndex = user.Avatar });
}
else
{
return Ok(new { error = "notEmailVerified", success = false });
}

}
else
{

return Ok(new { error = "notFoundUser", success = false });
}

}
Пароль в базе данных TblUsers = "allafi01F!"
но когда я отправляю запрос из пользовательского интерфейса с помощью Android JAVA и ввожу Allafi01F! пользователь будет найден, даже если первая буква пароля должна быть строчной "a".
Я установил точку останова в коде Java, и данные передаются правильно.< /p>
Не знаю, почему это происходит, со мной никогда раньше не случалось.
Я тестировал это в Swagger и все еще находит пользователя, даже если он чувствителен к регистру.

Подробнее здесь: https://stackoverflow.com/questions/786 ... wo-strings

Вернуться в «Android»