У меня был предыдущий вопрос, где мне указывали фабрики и шаблоны.Решил мои проблемы.За исключением этой конкретной проблемы при использовании пакета nuget System.Data.SQLite.Моя проблема при выполнении запроса.Вы должны явно назвать таблицу для запроса.Например,
public IEnumerable<Base> GetData(Base matchThis)
{
var query = from entry in connection.Table<Base>()
where entry.x == matchThis.x
where entry.y == matchThis.y
select entry;
return query.AsEnumerable();
}
Итак, если я изменю
connection.Table<Base>()
на
connection.Table<derA>()
, он будет работать правильно.
Однако мои попыткииспользовать шаблоны не работают ...
public IEnumerable<Base> GetClass<T>() where T : class
{
var t = Activator.CreateInstance<T>() as Base
var query = from entry in database.Table<t>()
...
...
...
Я получаю - переменная - t, но используется как тип.Эта ошибка имеет смысл, но я не вижу, что делать, чтобы это исправить.
Итак, это правильный путь, и я опять просто не правильно использую шаблоны, или есть другой способ?