Entity Framework - Como listar tabela dinamicamente através do seu nome?
public IQueryable GetMyTable(string tipo)
{
MyDbContext context = new MyDbContext();
Type type = Type.GetType($"teu_namespace.{tipo}");
if (type != null)
return context.Set(type).AsQueryable();
return null;
}
O segredo todo está no método Set. Muitas pessoas que encontram esse problema usaram esse método de maneira errada, colocando o Set<Type>. Isso sempre gerá o erro: "is a type but used as a class".
Para evitar esse problema use o Set(string) é a melhor forma para dinamizar o teu código.
0 comentários:
Enviar um comentário