【问题标题】:Presentation layer referencing data layer表示层引用数据层
【发布时间】:2010-11-03 11:12:43
【问题描述】:

我有一个 3 层的 .NET 2.0 应用程序。表示层引用中间层。中间层引用数据库层。出于某种原因,当我编译时,数据层的 dll 出现在表示层的 bin 中。我该如何阻止这种情况?

【问题讨论】:

    标签: .net n-tier-architecture 3-tier


    【解决方案1】:

    在引用属性中将 Copy Local 设置为 false

    【讨论】:

    • 没错,但他只是在问如何阻止它。
    【解决方案2】:

    阻止这种情况的唯一方法是使您的一个或多个层成为服务层(或类似的东西)以物理分离您的层。

    由于您的单独层是相互编译的,因此需要有程序集才能使整个应用程序正常运行。您如何设想应用程序在没有所有程序集的情况下工作?

    【讨论】:

      【解决方案3】:

      可以复制,因为有依赖关系。您的中间层依赖于中间层的 DataAccess 和 UI。您只需要跟踪,不要引用 UI 中的数据访问。

      【讨论】:

        【解决方案4】:

        通常我做物理层应用如下:

        1. 用户界面
        2. 演讲者
        3. 业务逻辑
        4. 数据访问
        5. 实体

        但我正在改变对这个组织的看法。因为我做过很多项目,其中一些需要维护和改进。我开始认为这个组织过于单一。 Ted Faison、Tomas Erl、Robert C. Martin、Andy Aunt 等一些作者表示,这种分层方法有点幼稚。

        无论如何...将您的逻辑放在单独的项目中并将它们构建为不同的程序集。进行分层引用,您将拥有您想要的。

        【讨论】:

          猜你喜欢
          • 2014-04-23
          • 1970-01-01
          • 1970-01-01
          • 2011-05-15
          • 1970-01-01
          • 2012-08-05
          • 1970-01-01
          • 2019-03-20
          • 1970-01-01
          相关资源
          最近更新 更多