用于更新两个对象的通用存储库

时间:2011-11-20 06:26:05

标签: c#-4.0 entity-framework-4 repository-pattern objectcontext

环境: IoC,存储库和工作单元模式

问题:我的通用存储库目前需要一个看起来像这样的类

public class GenericRepository<TEntity> : IFullRepository<TEntity> 
where TEntity : class   
{}

我对此有一个担忧,evrey时间我调用我的添加或更新我已经为该特定类(实体)更新了我的审计表,关注的是我是否能够创建一个通用的存储库,它可以占用2个类(实体)一个常规实体及其相应的审计实体一起用于我的添加和更新功能(即;创建另一个具有我的添加和更新方法的通用存储库,它可能看起来像这样

public class GenericRepositoryAuditAudit<TEntity,TEntity> : 
                               IFullRepositoryAudit<TEntity, TEntity> 
where TEntity : class   
{}

但问题是我的IObjectSet只在这里占用一个实体,它看起来像这样。

public interface IObjectContext
{
    IObjectSet<TEntity> Set<TEntity>() where TEntity : class;
    int SaveChanges();
}

问题是我如何实现这种功能?是否可以通过通用存储库实现。

这是我的班级(xenity)示例和(Xaudit)。

审核栏

    Identifier,(p)
   Timestamp
   UCode
  OpertnName
   XCode(f)
  Name
  OldValue
  NewValue

    XClass coloums

  Xcode(p)
     Xname 
     bool
     bool 

0 个答案:

没有答案