【问题标题】:Dependency injection in an n-tier architecture - how to approachn 层架构中的依赖注入 - 如何处理
【发布时间】:2023-03-19 09:46:01
【问题描述】:

我想构建一个 N 层应用程序。

客户端(WebJson-MVC、WebSoap-WCF)
API
BLL
达尔

Client 依赖于 API 依赖于 BLL 依赖于 DAL
所以可以说我想将API 注入客户端(WebJson-MVC,WebSoap-WCF)。
既然有 2 个客户,那么注射的最佳方法是什么? 我应该将依赖注入框架工作导入哪个项目?
解决方法是什么?
我应该在哪里初始化上下文? IApplicationContext ctx = ContextRegistry.GetContext();

编辑 1
如果我将在 WebJson-MVC 中创建依赖项注入,并且我想将 bll 注入到 api,我不将 MVC 与 BLL 耦合,让 bll 和客户端潮汐耦合不是很糟糕吗? 另外,我应该如何将 API 注入 WebSoap-WCF?

谢谢

【问题讨论】:

    标签: .net dependency-injection n-tier-architecture


    【解决方案1】:

    毫无疑问,WebJson-MVC 框架。 MVC 框架中的初始化将在 Global.asax.cs 文件的 ApplicationStart() 中。

    【讨论】:

    • 谢谢,请参阅我在问题中的编辑。
    • 在我目前正在解决和使用(MVC4/WebAPI/IoC 和 DI (Unity))的模型中,API/BLL/DAL 与它们处于同一“侧”都共享同一个项目(asp.net WebAPI 有点像 steriod 上的 WCF(但更瘦(像李小龙))。服务(SOAP-WCF(如果我必须使用它们))只有在有使用 SOAP/WCF 的集成授权。如果我必须使用 SOAP/WCF,我只需在 WebAPI 端进行 crud 调用等并序列化为接收者需要的任何内容。如果这是模棱两可的,我很抱歉。我是新手WebAPI,可能无法提供良好的指导
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-03
    • 1970-01-01
    • 2017-03-07
    • 2018-06-25
    • 2013-01-30
    • 2012-03-15
    相关资源
    最近更新 更多