UnitOfWork用于不同的DbContext

时间:2015-06-26 14:09:17

标签: c# generics unit-of-work

我有类似的事情

     get
        {
            return _officeRepository??
                (_officeRepository= new OfficeRepository(_context));
        }

现在问题是我有另一个不基于IEmployeeContext的存储库。让我们调用上下文IOfficeContext,这样就像

parameter

传递给OfficeRepository的Context是IOfficeContext。我应该为他们准备两个独立的UnitOfWork吗?还是可以在这里做一些其他聪明的事情?

1 个答案:

答案 0 :(得分:2)

你可以有一个共同的界面:

public interface IContext
{
    void Dispose();
    void SaveChanges();
}

IEmployeeContextIOfficeContext继承。然后,UnitOfWork只能知道IContext,并且能够同时处理这两种情况。