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

有帮助吗?

解决方案

阻止这种情况的唯一方法是使您的一个或多个层级成为服务层(或类似的东西),以便将您的层层分开。

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

其他提示

在参考属性

中将Copy Local设置为false

可以复制,因为有称为依赖项。您的中间层依赖于中间层上的DataAccess和UI。您必须保持跟踪,不要从UI引用数据访问。

通常我按如下方式进行物理层应用:

  1. 用户界面
  2. 主持人
  3. 商业逻辑
  4. 数据存取
  5. 实体

但我正在改变对这个组织的看法。因为我做过很多项目,其中一些需要维护和改进。我开始认为这个组织过于单一。一些作家,如 Ted Faison、Tomas Erl、Robert C.马丁、安迪阿姨说这种等级制的做法有点幼稚。

反正...将您的逻辑放入单独的项目中,并将它们构建为不同的程序集。进行层次结构参考,您就会得到您想要的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top