[英]What pattern is layered architecture in asp.net?
我是一名 asp.net 开发人员,对模式和架构了解不多。 如果你能在这里指导我,我将非常感激。
在我的 web 应用程序中,我使用了 4 层。
Web 网站项目(有 web forms + 代码隐藏 cs 文件,用户控件 + 代码隐藏 cs 文件,母版页 + 代码隐藏 cs 文件)
CustomTypesLayer 一个 class 库(具有自定义类型、枚举、DTO、构造函数、get、set 和验证)
BusinessLogicLayer 一个 class 库(具有所有业务逻辑、规则和对 DAL 函数的所有调用)
DataAccessLayer 一个 class 库(只有与数据库通信的类。)
-我的用户界面只调用 BusinessLogicLayer。 BusinessLogicLayer 自行处理数据,并调用 DataAccessLayer 函数处理数据。
-Web forms 不直接调用 DAL。
-CustomTypesLayer 由所有图层共享。
请指导我这种方法是一种模式吗? 我虽然它可能是 MVC 或 MVP,但页面也有文件背后的代码,这让我感到困惑。
如果没有模式,它是否接近某种模式?
那不是四层,而是三层,所以它是常规的三层体系结构。
CustomTypesLayer根本不是一个图层。 如果是这样,则用户界面将仅使用自定义类型层,而从不直接与业务层对话,而数据访问层将永远不使用自定义类型层。
三层架构是多层架构
就模式而言,我建议您掌握以下内容:
假设您还没有看到Wikipedia,那么它会列出相当不错的软件设计模式 。
最后要牢记的是,存在三种基本类型的模式(加上多线程/并发的第四类); 它可以帮助您了解这些类别,并在进行此类操作时记住这些类别,它们是:
看一看实体框架或LinqToSQL。 它们都可以从数据库自动生成数据访问层。 这将节省您很多(无聊的)工作,并使您可以专注于有趣的图层。
后台代码实际上与体系结构没有任何关系-它更多是一种编码风格。 这是一种将逻辑与表示分离的方法。 您提到的任何体系结构都可以使用或不使用代码隐藏。
您似乎正在描述标准的三层体系结构。 MVC是一种模式,用于描述您的图层和用户如何交互。 用户请求一个页面(由View表示),该页面向Controller请求其数据。 Controller与您的业务层(模型)进行通信以提取正确的数据,并将其传递给您的View以进行显示。 如果视图是交互式的,例如它允许用户更新某些内容,则此用户操作操作将传递回您的控制器,后者将针对业务层调用相关方法以将更新保存到数据库。
希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.