我有一个由通用存储库和一些实体类型的特定实现组成的 BL(我的 DAL 是实体框架 5 模型)。存储库几乎使用 System.Data.Entity.DbContext 的方法 Set() 来实现其所有功能。我有一些表达式用于获取实体 T 的兄弟姐妹,这些表达式不适用于 Set(Type entityType) 的结果。
有一次,我有一个非泛型 DbEntityEntry 的实例。实体的类型为 Object。当我使用 GetType() 时,我得到了适当的实体类型。我知道想使用我在存储库中的函数获取相关实体。有没有办法从非通用 DbEntityEntry 中做到这一点。
我试过了:
public Repository(T entity)
{
\\ Construction here
}
但是我得到了 aRepository<Object>
并且对的调用Set<Object>
没有按预期返回。
我一直在寻找一种方法来做到这一点,但一无所获。