0

我目前的项目包括 2 个项目(层)

1.控制器

在此控制器中可以找到以下文件夹。

  1. 商业逻辑
  2. 数据访问
  3. 实体

这些文件夹中的每一个都包含连接到数据库的代码、连接到数据库的逻辑以及实体包含属性。

2.网络应用

该层由 aspx 页面、用户控件、脚本等组成

我想知道正在遵循哪种架构。有人告诉我这是三层架构。如果是这样,为什么是控制器?

4

2 回答 2

0

这更多的是关注点分离。即数据访问层使用实体直接与数据库对话,它不了解业务层。它的主要工作是连接到数据库并返回数据。

业务层用于与数据访问层通信并相应地操作数据(取决于您的业务)。

然后,Web 应用程序与您的业务应用程序/域层对话并显示内容。

通常数据访问、业务层和实体通过项目而不是文件夹分开。

于 2013-07-09T09:52:11.703 回答
0

首先,根据您的描述,他们似乎只是将一个项目命名为控制器,但根据 MVC 模式,它没有任何标准控制器的角色。他们可能认为该项目控制业务逻辑和数据访问,所以他们只是给出了这个名称。如果可能,您可以询问应用程序的架构师或 SME(主题专家)。

其次,我认为您应该考虑 Layers 和 Tiers 之间的区别。您似乎在这里讨论图层。

层都是关于分配应用程序的职责。看看http://fewagainstmany.com/blog/introduction-to-layered-architecture-part-one。三层架构可能涉及三个项目,也可能不涉及。

应用程序中的层是分离的逻辑单元。例如,您可能有用户界面层、业务逻辑层、服务层、数据访问层。每一层都应该有代码来实现应用程序的那个部分/单元。

该层代表分离/部署的物理单位。如果所有层(用户界面层、业务逻辑层、服务层、数据访问层)都部署在同一台服务器机器上,那么您只有一层。看看http://blog.simcrest.com/what-is-3-tier-architecture-and-why-do-you-need-it/

通常随着用户数量(或应用程序负载)的增加,单个服务器无法高效执行,那么我们需要尽可能添加更多层或需要用户更强大的服务器。

因此,层数可以小于或等于您拥有的层数。层数只能在设计阶段说出来,因为应用的架构已经决定了,但是层数可以在你规划好部署之后再确定。

第三,如果只有两个项目里面有一些文件夹,那么它只是两个后来的架构。如上所述,层数取决于项目的部署。

如果有任何问题,请随时讨论。谢谢。

于 2013-07-09T11:50:15.933 回答