是否可以有一个 DbContext,它只有一个泛型类型 IDbSet 的属性,而不是具体 IDbSet 的集合,例如 DbSet。
更具体地说,我只想创建一个通用 DbSet,其中将动态确定实际类型,例如
public new IDbSet<T> Set<T>() where T : class
{
return context.Set<T>();
}
我不想创建多个 DbSet,例如
DbSet<product> Products { get; set; }
...
实际上,我尝试使用该通用 DbSet,但似乎存在一个问题。DbContext 不会在数据库中创建相应的表。因此,尽管我可以使用内存中的实体图,但当需要将实体存储到数据库中时,会引发异常(无效的对象名称 'dbo.Product'。)
有什么方法可以强制 EF 创建对应于动态创建 DbSet 的表?