我想创建一个存储库模式的n层体系结构。我想知道是否有意义,只需通过BLL层复制所有呼叫,然后通过BLL访问仅数据呼叫?或者我可以通过DAL直接访问某些内容,还可以通过BLL访问某些内容?如果我使用BLL,我还应该访问DAL吗?
1
A
回答
1
海事组织它没有意义只为了它而复制。
(但实际上每一个方法都有其优点和缺点,没有什么是永远是错的还是不错的本身)
通常虽与例如(简体)有点“粒”的数据完全一致,表格等
数据层处理尽管您的业务层可以将其组合起来,并更多地围绕“逻辑”和逻辑模型(数据模型和数据)展开。
如果您发现自己在您的biz图层中有DAL的确切副本,那么您最有可能缺少点类型。有些事情可能需要重新组织,抛弃或简化。
或者例如问问你自己 - 如果你想要例如将DAL替换为使用不同类型的存储(不同组织的事物或任何需要更改数据/ DAL操作方式的内容) - BLL的外观如何?一样?你的业务层不应该“遵循数据” - 它应该有它自己的规则,更多的关于你的域的逻辑,你在做什么。虽然数据应该是关于数据的。因此,简而言之,问题主要是你如何设计你的系统 - 如果你很好地利用了业务层(通常你应该除非它相对简单,或者例如你决定采用完全不同的架构),然后使用它,如果没有,则不需要重复。
希望这有助于。
相关问题
- 1. SettingsProvider类 - 它应该在DAL还是BLL项目中?
- 2. 应该使用DAL访问应用程序的配置吗?
- 3. 如果我的应用程序只能调用BLL metods,为什么要为我的SQL,DAL和BLL做UnitTest?
- 4. 我应该如何访问另一个模块的DAL?
- 5. 通用DAL/BLL类
- 6. 如果我们要访问网站,我们不应该使用微格式吗?
- 7. 我应该使用哪种DAL选择?
- 8. BLL和DAL
- 9. ADO.NET DAL和BLL
- 10. 在我的API中不使用DAL而使用BLL函数
- 11. 实体框架 - 我该打电话的DbContext从BLL或DAL
- 12. 如果我还需要使用ODE,我应该从Eigen切换到MTL4吗?
- 13. 如何使用bll,dal和model?
- 14. 我应该使用括号[]还是.at()来访问数组?
- 15. 我应该在访问Web服务时使用SOAP还是REST?
- 16. 显示最终用户的访问权限..我应该吗?我不应该吗?
- 17. 如果我使用不同的ViewItemTypes,我应该使用viewHolders吗?
- 18. 我应该创建此访问器吗?
- 19. 如果view使用javascript呈现,我还应该对html做出回应吗?
- 20. 打破BLL(业务逻辑层)到BLL和DAL(数据访问层)
- 21. MVVM WPF中使用LINQtoSQL的DAL和BLL
- 22. 我应该如何使用artifactory访问令牌访问npm repo
- 23. 如果我可以自己开发,我应该使用CMS吗?
- 24. 在Backbone中,如果它只是一个模型,我还应该使用Collection吗?
- 25. 我应该尝试将asp控件事件放入BLL中吗?
- 26. 我应该在块中使用“self”来访问类方法吗?
- 27. 我应该总是使用TryGetValue来访问.net字典吗?
- 28. 我应该使用“base”吗?访问继承时前缀属性
- 29. 我应该使用Hilo还是Guid? +我如何使用Hilo
- 30. 我们还应该支持iOS 4吗?
我个人只能通过我的bll访问我的dal,并且会重复呼叫。你永远不知道什么时候可能需要添加一些业务逻辑,并且在bll中修改呼叫比在bll上添加新呼叫要容易得多。 – 2012-04-15 14:26:06
如何定义“仅数据调用”?为什么你觉得你在BL里“重复呼叫”?你在编程什么技术(Winforms,Webforms,MVC ...?)? – 2012-04-17 17:58:56