Я пытаюсь создать универсальный метод для доступа ко всей моей таблице базы данных sql через контекст базы данных EF Core.
Я застрял в том, как сообщить контексту, к какой таблице я хочу получить доступ. Обычно, конечно, вы можете просто использовать context.Type.Where() etc.
, где Type
- это тип таблицы, к которой вы хотите получить доступ.
Поскольку я хочу, чтобы метод был универсальным, я не знаю тип во время компиляции, только во время выполнения, поэтому я не могу явно указать тип DbSet
, который я хочу.
Вот что у меня есть:
public void BuildTable(string sortFilterMethod, string sortFilterType,
string sortFilterValue)
{
Type t = typeof(Eng); //just an example, will eventually be selected programatically
using (TestEngContext context = new TestEngContext())
{
context.Set<t>().Where() //etc.;
}
}
Я получаю сообщение об ошибке «переменная используется как тип», когда я пытаюсь установить тип DbSet
на t
.
Есть ли способ явно заявить, что t
должен рассматриваться как тип, а не переменная?
Спасибо