加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – DAL – > BLL < - GUI组合根.如何设置DI绑

发布时间:2020-12-15 23:19:16 所属栏目:asp.Net 来源:网络整理
导读:我已经制作了一个三层应用程序,如 answer所述: DAL with Repositories - BLL with services and IRepository - Asp.net mvc-app 为了让这个运行依赖注入我看到几个选项: 1.从Web应用程序添加对DAL的引用,以便在应用程序启动时设置绑定. 2.使用带有xml配置
我已经制作了一个三层应用程序,如 answer所述:
DAL with Repositories -> BLL with services and IRepository <- Asp.net mvc-app

为了让这个运行依赖注入我看到几个选项:
1.从Web应用程序添加对DAL的引用,以便在应用程序启动时设置绑定.
2.使用带有xml配置的容器
(3.使用反射来加载dal-assembly和查找类型)

选项1.很容易,也可以将DAL.dll复制到bin,但是我突然重新引用了我很努力工作的引用.现在可以直接访问存储库.选项2和3似乎不必要的复杂.

有没有别的办法?

解决方法

将ASP.NET MVC应用程序分为两个:

>一部分是你原来的ASP.NET MVC应用程序,但没有任何逻辑.只需保留组合根和您的Views(.aspx等)在这个项目中.由于这是组合根,您可以引用所有其他项目.然而,由于所有的逻辑都将被提取出来,所以现在是一个Humble Object,所以可以在这个层面上提供所有的参考.
>将所有逻辑(控制器等)解压缩到一个应用程序模型项目中,该项目只是一个引用ASP.NET MVC二进制文件的普通库项目(.dll).这个项目需要参考BLL来获取接口,但是没关系.然而,应用程序模型和BLL都有效地与DAL屏蔽.

最终的分层将如下所示:

> ASP.NET MVC应用程序>应用模型> BLL> DAL

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读