题
我有一个 3 层 .NET 2.0 应用程序。表示层引用中间层。中间层引用数据库层。由于某种原因,当我编译时,数据层的 dll 出现在表示层的 bin 中。我该如何阻止这个?
解决方案
阻止这种情况的唯一方法是使您的一个或多个层级成为服务层(或类似的东西),以便将您的层层分开。
由于您的单独层是相互编译的,因此程序集需要在那里才能使整个应用程序正常运行。您如何设想应用程序在没有所有程序集的情况下工作?
其他提示
在参考属性
中将Copy Local设置为false可以复制,因为有称为依赖项。您的中间层依赖于中间层上的DataAccess和UI。您必须保持跟踪,不要从UI引用数据访问。
通常我按如下方式进行物理层应用:
- 用户界面
- 主持人
- 商业逻辑
- 数据存取
- 实体
但我正在改变对这个组织的看法。因为我做过很多项目,其中一些需要维护和改进。我开始认为这个组织过于单一。一些作家,如 Ted Faison、Tomas Erl、Robert C.马丁、安迪阿姨说这种等级制的做法有点幼稚。
反正...将您的逻辑放入单独的项目中,并将它们构建为不同的程序集。进行层次结构参考,您就会得到您想要的。
不隶属于 StackOverflow