.net三层架构

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

三层结构的三层是指表示层、业务逻辑层、数据访问层。

表示层:位于最外层,离用户最近,用于显示数据和接受用户输入的数据,为用户提供一种交互式操作界面。表示层一般为Windows应用程序或Web应用程序。

业务逻辑层:是表示层和数据访问层之间通信的桥梁,主要负责数据的传递和处理,例如数据有效性的检验、业务逻辑描述相关功能。业务逻辑层通常为类库。

数据访问层:主要实现对数据的保存和读取操作。数据访问,可以访问关系数据库、文本文件或是XML文档。数据访问层通常为类库。

在三层结构中,各层之间相互依赖:表示层依赖于业务逻辑层,业务逻辑层依赖于数据访问层。

在三层结构中,各层之间的数据传递方向分为请求与响应两个方向:

表示层接受用户的请求,根据用户的请求去通知业务逻辑层,业务逻辑层收到请求,首先对请求进行阅读审核,然后将请求通知数据访问层或直接返回给表示层,数据访问层收到请求后便开始访问数据库;

数据访问层通过对数据库的访问得到请求结果,并把请求结果通知业务逻辑层,业务逻辑层收到请求结果,首先对请求结果进行阅读审核,然后将请求结果通知表示层,表示层收到请求结果,并把结果展示给用户。

使用实体类构建三层结构

实体类,简单地说是描述一个业务实体的类,业务实体直观一点理解就是整个应用系统业务所涉及的对象,从数据存储来讲,业务实体救是存储应用系统信息的数据表,我们将每一个数据表中的字段定义成属性,并将这些属性用一个类封装,这个类就是实体类。

业务实体可以认为属于业务逻辑层,当然,可以将业务实体单独作为一层,称为业务实体层。表示层、业务逻辑层、数据访问层都依赖于业务实体。各层之间数据的传递主要是实体对象(业务信息封装在实体对象中)。

博客系统

数据库:创建数据库MyBlog、用户表Users、日志信息表Articles、评论信息表Comments

创建空白解决方案Blog.sln

添加类库BlogModels(模型层),分别添加User.cs、Article.cs、Comment.cs(与数据库中的表一一对应)

1:

6:using System;

7:using System.Collections.Generic;

8:using System.Text;

9:

10:namespace BlogModels

11:{

12://实体类前面一般加上序列化属性,它会对实体类中的所有字段、属性进行序列化处理。13://序列化的主要目的是为了提高数据传输中的性能与安全性

14: [Serializable()]

15:publicclass User

16:{

17:privateint id;

18:privatestring loginId = String.Empty;

19:privatestring loginPwd = String.Empty;

20:privatestring name = String.Empty;

21:

22://构造函数

23:public User() { }

24:

25:////////////////////////////////////////////

26:// Primary Key

27:////////////////////////////////////////////

28://[DBField("Id")]

29:publicint Id

30:{

31: get { returnthis.id; }

32: set { this.id = value; }

33:}

34:

35:////////////////////////////////////////////

36:// Properties

37:////////////////////////////////////////////

38://[DBField("LoginId")]

39:publicstring LoginId

40:{

41: get { returnthis.loginId; }

42: set { this.loginId = value; }

43:}

44:

45://[DBField("LoginPwd")]

46:publicstring LoginPwd

47:{

48: get { returnthis.loginPwd; }

49: set { this.loginPwd = value; }

50:}

51:

52://[DBField("Name")]

53:publicstring Name

54:{

55: get { ; }

56: set { = value; }

57:}

58:}

59:}

其他两个类与之相似~

添加类库BlogDAL(数据访问层)

添加类库BlogBLL(业务逻辑层)

添加网站Blog(表示层)

希望朋友们留下自己对三层架构的理解。。。

三层体系结构的概念

1.用户界面表示层(USL)

2.业务逻辑层(BLL)

3.数据访问层(DAL)

BLL将USL与DAL隔开了,并且加入了业务规则

∙各层的作用

∙1:数据数据访问层:主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数

据服务.

2:业务逻辑层:主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑

处理,如果说数据层是积木,那逻辑层就是对这些积木的搭建。

相关文档
最新文档