gpt4 book ai didi

asp.net-mvc - 工作单元模式实现

转载 作者:行者123 更新时间:2023-12-04 00:11:18 27 4
gpt4 key购买 nike

我首先使用 ASP.NET MVC 和 Entity Framework 代码创建一个应用程序。我正在使用受以下链接影响的存储库和工作单元模式。

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

在这里,我对工作单元的实现有疑问,该链接工作单元是通过直接在类本身中编写实体来实现的。

public class UnitOfWork : IDisposable
{
private SchoolContext context = new SchoolContext();
private GenericRepository<Department> departmentRepository;

public GenericRepository<Department> DepartmentRepository
{
get
{

if (this.departmentRepository == null)
{
this.departmentRepository = new GenericRepository<Department>(context);
}
return departmentRepository;
}
}

}

您认为实现是否足够好,因为每次我添加/删除实体时,我都需要更改我的工作单元单元。我认为工作单元不应该依赖于实体。因为在我基于客户反馈的应用程序中,我们将经常添加/删除实体。

我可能听起来很愚蠢,但请让我知道您对此的看法。

最佳答案

Entity Framework 中已经实现了工作单元模式。

DbContext 是您的工作单元。
每个 IDbSet 都是一个存储库。

using (var context = new SchoolContext())   // instantiate our Unit of Work
{
var department = context.Departments.Find(id);
}

关于asp.net-mvc - 工作单元模式实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23111868/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com