получение записи из базы данных sqlite с помощью xamarin android c # - PullRequest
0 голосов
/ 05 мая 2018

я использую c # для запроса sqlite, чтобы получить запись по электронной почте в xamarin android, используя следующий код (ожидая одну запись)

public User ReturnRecordUsingEmail(string email)
        {
            var db = new SQLiteConnection(dbpath);
            var record = db.Table<User>().Where(r => r.Email.Contains(email)).Single();
            return record;
        }

но когда я вызываю вышеприведенную функцию к следующему коду, она возвращает ноль.

   Toast.MakeText( this,db.ReturnRecordUsingEmail(MainActivity.Email).LastName.ToString(),ToastLength.Long).Show();

1 Ответ

0 голосов
/ 05 мая 2018

Возможны различные причины, по которым ваш код возвращает нуль.
Убедитесь, что таблица User не пуста и содержит адрес электронной почты.

Помимо вашего основного вопроса, есть несколько проблем с вашим кодом:

  1. Вы должны распоряжаться SQLiteConnection.
  2. Ваш запрос может быть улучшен:
    db.Table<User>().SingleOrDefault(u => u.Email.Equals(email, StringComparison.OrdinalIgnoreCase))

Также имейте в виду, что хранение базы данных пользователей на мобильном устройстве - не самая лучшая идея.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...