首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC/存储库: SoC和双重检查

MVC/存储库: SoC和双重检查
EN

Stack Overflow用户
提问于 2011-03-31 21:25:45
回答 1查看 131关注 0票数 0

我正在使用MVC存储库/服务层模式创建一个博客。根据分离关注原则,每一层只能完成其任务。因此,在我的示例中,必须在服务层(SL)中实现对对象(例如博客帖子)的用户权限检查。这是否意味着从存储库层(RL)返回的任何内容都必须根据其业务规则在SL中签入?也许是这样的-当有一天回购被另一个回购所取代的时候。例如,如果新存储库的GetAllMyPosts()方法不仅不正确地返回我的帖子,而且返回其他人的文章,那么它们应该被SL过滤掉。但是在这种情况下,我们有双重检查:一个在RL中,它只检索我的帖子,另一个在SL中,它过滤任何帖子,但是用户是创建者。实现这一点的正确方法是什么?我应该在哪里以及如何检查权限?把我的SL托付给RL?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-01 01:28:03

不怎么有意思。如果没有继承业务逻辑,直接使用Repo层是可以的。所以像查找之类的东西可以直接通过。(再一次,一些纯粹主义者可能会争论这一点)

在你的例子中,我会这样做:

代码语言:javascript
复制
Service.GetAllMyPosts()
Repo.GetAllPostsForUser(userId)

因此SL确定当前用户并适当地调用回购。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5506546

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档