gpt4 book ai didi

asp.net-mvc - ASP.NET MVC 数据访问层

转载 作者:行者123 更新时间:2023-12-04 04:52:04 25 4
gpt4 key购买 nike

我正在处理一个 ASP.NET MVC 项目。在我的解决方案中,我有以下项目:
BlogApp.Web(ASP.NET MVC 应用程序),
BlogApp.Data(类库)

我想知道如何实现数据访问层。我想使用 EntityFramework Code First 方法。我在考虑存储库模式,但这真的有必要吗?我读过它只是 ORM 之上的下一层,这并不是真正需要的。因此,而不是编写方法,例如:

GetAllPosts(Tag t) {
db.Posts.Where(p => p.Tags.Contains(t)).Skip(x).Take(y).Select(p => p);
}

我在 Controller 中创建数据库上下文并编写相同的查询?我不需要在我的模型周围实现分页和编写包装器。

最佳答案

关于 Repository 模式,您可能听说过它在某些阵营中失宠——例如参见 Jimmy Bogard's blog .这并不意味着应该直接在 Controller 中编写查询,除非您的应用程序非常非常简单。

如前所述,你的查询应该只写在你的 Controller 可以使用的一个地方——这可以是一个存储库方法或一个专用的查询对象,两者都提供更好的抽象并避免重复。

简单地说 - 您的应用程序是否打算拥有多个前端,这些前端需要为您的数据访问层单独组装?如果不是,您可能需要考虑合并两个程序集并仅使用命名空间来使事情井井有条。

关于asp.net-mvc - ASP.NET MVC 数据访问层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17291613/

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