У меня есть следующая таблица базы данных:
CREATE TABLE "users" (
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
"email" TEXT NOT NULL,
"pet_name" TEXT NOT NULL,
"pet_age" INTEGER NOT NULL
);
У меня есть следующие модели C #:
public class User
{
public string Email { get; set; }
public Pet Pet { get; set; }
}
public class Pet
{
public string Name { get; set; }
public int Age { get; set; }
}
Как я могу сделать запрос SQLite SELECT *
, который бы возвратил User
объект, с нужной Pet
информацией?
Это то, что я пробовал:
public static User GetUserByEmail(string email)
{
using var con = new SQLiteConnection(Globals.DbConnectionString);
return con.QueryFirstOrDefault<User>($"SELECT * FROM users WHERE email = @email COLLATE NOCASE", new
{
email
});
}
Но это не сработает с моделью Pet
, очевидно, это не так. т магия.