我目前正在开发使用工作单元,通用存储库和服务模式的asp mvc。我对设计在控制器中的工作方式有点困惑。 我应该将资源库公开给控制器吗?或者管理员是否应该知道服务? 控制器需要存储库来检索组合框列表的实体。 暴露存储库的问题是它有保存和删除方法,只能由服务调用。 有人可以帮我解决这个问题吗?我应该在使用服务时向版本库公开仓库吗?
1
A
回答
3
0
它取决于持久层(Repository)前的任何业务逻辑的需求。你有任何的时候,它会在控制器中结束。这对于一个非常简单的系统来说可能是可以接受的,但是当您将系统扩展(玩家状态之外的REST API,管理/支持应用,离线/批处理)时,您需要将该逻辑推送到共享层,服务层。现在就放入抽象概念,稍后再保存一些重构。这也可以使控制器保持业务目标,指导流量和呼叫服务获取/放置数据。
+0
表示层应仅引用服务层而不引用存储库层。就像你的情况一样,有时候我们需要通过服务层创建一个“传递”,只是为了将它暴露给表示层。 – sunil
相关问题
- 1. 使用dlopen时,我应该链接到我打开的库吗?
- 2. 我不应该把git仓库放在“htdocs”中吗?
- 3. .git文件夹应该存储在我的SVN仓库中吗?
- 4. 我应该使用intent服务吗?
- 5. 我应该配置我的服务器以使用最新版本的PHP吗?
- 6. 我应该在版本控制库中添加第三个库的dll吗?
- 7. 我们是否应该将报告数据仓库放在我们的事务数据库服务器
- 8. 我应该在settings.xml中使用mirrorOf *来定义Maven仓库?
- 9. 我应该在iOS开发中使用哪一个C库Java版本?
- 10. 在调用本地Web服务时,我应该担心HTTP开销吗?
- 11. 我的网络服务版本可以同时公开发布Android APK吗?
- 12. 库和框架应该受版本控制库吗?
- 13. Web服务器:SVN仓库
- 14. Maven仓库服务器
- 15. SVN GIT仓库服务器
- 16. 隐藏在公共仓库
- 17. 当我在BOOST中使用通用图像库时应该安装jpeg库吗
- 18. 公开仓库上的交易。 NHibernate的
- 19. 我应该公开构图对象吗?
- 20. 我应该公开异步方法吗?
- 21. 我应该使用SQLite数据库版本2.1还是3.0?
- 22. 开发JavaScript库时应该使用命名函数吗?
- 23. 我应该实施一个存储库和xml服务吗?
- 24. 在github仓库中标记版本
- 25. 开发环境 - 远程本地服务器和Git仓库
- 26. git分支与git仓库,我应该使用哪一个?
- 27. 我是否应该使用Realm仓库(ios)
- 28. 我应该使用什么Maven仓库来获取Tomcat罐子?
- 29. 将类库公开为WCF服务
- 30. 使用本地Maven仓库
[可以从表示层访问存储库吗?](http://stackoverflow.com/questions/1394967/can-i-access-a-repository-from-presentation-layer) – Soren
如果你有一个服务层那么为什么你甚至想要将资源库公开给控制器。您应该添加另一种方法来检索combolist的数据。 –