繁体   English   中英

根据实体类型创建通用DbSet

[英]Creating generic DbSets based on entity types

在EF代码中,首先使用以下代码平静性,我可以根据每种实体类型创建非通用DbSets

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM