动态加载 DbSet 到 DbContext

use*_*379 5 c# entity-framework entity-framework-core

如何DbContext将 X 个类动态加载到 EF7 中,而无需在DbContext类中显式编写它们?

例如,我试图像这样避免它:

public class MyDbContextClass : DbContext
{
    public DbSet<Category> categories {get;set;}
    public DbSet<Product> products {get;set;}
    ...
}
Run Code Online (Sandbox Code Playgroud)

因此,动态加载 Category 和 Product 可能会很棒(不知道我是否有 2 个或 20 个类)。

是否可以?

nat*_*ter 2

dbContext.Set<T>()创建一个实例,DbSet<T> 只要T是模型中的类型(即您必须在 中添加实体类型OnModelCreating)。

请参阅的源代码.Set<T>