从零开始完成一个三层架构案例-1
从零开始完成一个三层架构案例-1
0. 前言
这是我之前在语雀上写的一篇文章,语雀链接:
点击此处进行跳转
一共有连续的三篇文章。
0.1 步骤分类
- 主体功能的增删改查
- 若是光想实现功能,自己设计样式,跟着做到2.11(分割线之前)就可以了。但是到2.11是以DataSet进行三层架构之间的数值传递,而不是以实体类。
- 2.7 2.9 2.10 2.11 为主要的增删改查功能的实现。
- 实体类的使用
2.12 - 2.14 ,也就是分割线一和分割线二之间的部分,为实体类的具体实现,(肯定会有欠缺的地方,我也是初次使用实体类)。用实体类代替DataSet在三层之间传递数据。 - 多数据库的支持
步骤02文档中的 2.15 - 2.20 (分割线三之前) ,实现了对不同数据库的支持。(抽象数据访问层、工厂类) - 主题和皮肤
2.21 - 2.26
实现了页面与样式分离 - //TODO 头像上传功能
- //TODO 多种查询功能
0.2 介绍
- 有问题或者错误可以在下面评论或者私聊我。
- 虽然说是从零开始完成一个项目,但是在写教程的过程中的思路跟自己一开始摸索着开发的思路肯定是不一样的,所以可能有些地方感觉上并不是很清晰,但是到了后面,一个整体的功能实现好了之后就会明白了。
- 若是想学习这个小案例,最好是跟着敲一下,毕竟有些东西还是实践出真知
- 或许会有错误,但是主体功能都没问题;可能是一些我上图上错了的错误什么的。。。
- 开发三层架构的正常编写代码顺序应该是 U—>D—>B,而我在这个文档中一般是按照 D—>B—>U的顺序写的。
- 某些想法肯定是不成熟的,学习阶段。。。
- 实体类和对不同数据库的支持花了比较长的时间来学习,所以也是比较繁琐的两个部分。
- 0.1 中的 //TODO 是在计划之列,不过也可能会被砍掉,看时间安排吧。
1. 项目介绍
1.1 题目要求
1.2 整个解决方案的结构
1.2.1 分割线一 前面的内容完成后:
1.2.2 分割线二 前面的内容完成后:
1.2.3 分割线三 前面的内容完成后:
1.2.4 分割线四 前面的内容完成后:
1.3 使用到的知识
- 三层架构(U层、B层、D层)
三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用划分为:界面层(User Interface layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer)。区分层次的目的即为了“高内聚低耦合”的思想。在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层。
- GridView控件的基本使用
- GridView控件中的RowCommand事件及其参数的使用:
修改和删除时候进行对应的方法:
GridViewCommandEventArgs e e.CommadName e.CommandArgument - GridView控件中的换页
PageIndexChanging事件
gridView. PageIndex = e.NewPageIndex; //GridViewCommandEventArgs e
gridView.DataBind(); - 不使用GridView+SqlDataSource,来实现真正的三层架构
gridView.DataSource = XXX;
gridView.DataBind(); - BoundField ButtonField
- SQL语句的增(1)删(1)改(1)查(All)
- 对SQLserver和MySQL的连接
- 母版页和内容页
- CSS样式表
- 正则表达式对数据的验证
- 实体类的创建与使用
- 三层架构中对不同数据库的支持
- 抽象工厂设计模式
它提供了一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 - 反射
反射提供了描述程序集、模块和类型的对象( Type 类型)。 可以使用反射动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性。如果代码中使用了特性,可以利用反射来访问它们。 - 配置文件
配置文件为开发人员和管理员提供了对应用程序运行方式的控制权和灵活性。配置文件是可以按需要更改的 XML文件。管理员能够控制应用程序可以访问哪些受保护的资源,应用程序将使用哪些版本的程序集,以及远程应用程序和对象位于何处。开发人员可以将设置置于配置文件中,从而没有必要在每次设置更改时重新编译应用程序。
简单理解就是将软件中容易修改的内容保存到配置文件中,需要修改时,只需要修改配置文件的内容,而无需修改程序本身,重新编译。 - 主题