【发布时间】:2014-05-19 20:30:15
【问题描述】:
我阅读了很多关于工作单元模式的实现的信息,例如 http://www.asp.net/mvc/tutorials/getting-started-with-ef-5-using-mvc-4/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application 或 http://gaui.is/how-to-mock-the-datacontext-linq/
他们在工作单元类中保留了一个通用的基础存储库类或接口,效果很好。在实践中,我的存储库需要更多功能,因为通用接口存储库提供。
所以我的目标是在必要时使用自定义存储库。但我不确定如何实现它们。我不想在工作单元类中定义它们,如下所示,
public class UnitOfWork : IDisposable
{
private SchoolContext context = new SchoolContext();
private CustomRepository<Department> departmentRepository;
private GenericRepository<Course> courseRepository;
[...]
因为我将无法再次使用 UnitOfWork 类。我认为上面的示例代码与 UnitofWork 模式相矛盾。
当我构建类似于http://gaui.is/how-to-mock-the-datacontext-linq/ 的东西时,是否有人知道如何在工作单元模式中以干净的方式实现自定义存储库?
最好的问候
【问题讨论】:
-
我发现此链接对于创建通用存储库特别有用。这有帮助吗? huyrua.wordpress.com/2010/07/13/…
-
我看看,谢谢。
标签: c# asp.net-mvc unit-of-work