0

DbSets在 EF 代码中首先使用以下代码和平,我可以根据每个实体类型创建非泛型:

foreach (var entry in _dbContext.ChangeTracker.Entries<BaseEntity>())
{
    BaseEntity entity = entry.Entity;
    Type type = entity.GetType();
    var set = _dbContext.Set(type);
} 

有什么方法可以将它们创建为 Generic DbSets?

4

1 回答 1

0

不容易。Set<>如果您确实需要获取泛型,则可以调用使用反射的正确泛型重载DbSet。除此之外,为了调用泛型方法,您需要在编译时知道正确的泛型类型参数。抛开反射不谈,任何时候你最终Type在运行时使用对象,你就失去了使用泛型类型的能力。

于 2013-12-09T04:16:42.563 回答