Я сейчас создаю систему входа в систему, используя SQLite, используя C # на Xamarin.ios.У меня проблема в том, что отправить в базу данных хешированный пароль, который работает нормально.На стороне входа в систему мне нужно получить обратно фактически хешированное значение, чтобы я мог запустить метод, который проверяет возвращаемое значение по введенному пользователем значению.
Проблема, с которой я столкнулся, заключается в том, что запрос на самом деле не возвращает значение как все, и я на самом деле не понимаю, что я получаю от запроса.Я запускаю FirstOrDefault, чтобы убедиться, что я получаю только электронную почту и пароль, которые пользователь ввел для своей электронной почты.Однако, поскольку я не получаю строковое значение обратно, я не уверен, как поместить его в метод для проверки значения хеш-функции.
Надеюсь, это имеет смысл.Это код, который выполняет запрос:
public void UserLogin()
{
string dbPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), "PmApp.db3");
var connection = new SQLiteConnection(dbPath);
string loginEmail = loginEmailInput.Text;
string loginPass = loginPasswordInput.Text;
var emailExists = (from s in connection.Table<SQLiteTables.LoginInfo>()
where s.Email.Equals(loginEmail)
where s.Password.Equals(loginPass)
select s).FirstOrDefault();
Console.WriteLine(emailExists); //This is just to see what value gets returned
}
И это возвращаемое значение:
2018-05-16 15:57:50.401 SQLite[15735:8043670] SQLite.SQLiteTables+LoginInfo
Надеюсь, кто-нибудь может помочь.Джейми