代码改变世界

我的网站的结构说明

  金色海洋(jyk)  阅读(3930)  评论(2编辑  收藏  举报

 

不知道大家有没有看懂这个图。这个是我的网站(不包括后台管理)的结构图。基本上和三层架构有些相似,但是有三个不同的地方:
 
   一、 数据访问层。
1、数据访问层针对项目是通用,而针对数据库却是专用的。什么没看懂,听我慢慢道来。
针对项目是通用的:在所有的项目里使用的数据访问层都是一样的(引用同一个DLL文件);
数据库却是专用的:针对SQL会有一个类库(DLL文件),针对Orcale会有另一个类库(DLL文件),其它的数据库也是一样。
这些类库(DLL文件)里的类名、命名空间是相同的,属性、方法是一样的,参数也是一样的。这样呢就可以实现更换数据库的时候换用对应的类库(DLL文件)就可以了。
 
2、数据访问层的功能和SQLHelp的有些类似,它只是对ADO.NET的进一步的封装,并不包括实际的SQL语句。也就是说,数据访问层就是访问(添加修改删除等)数据库的方法,而不包含访问哪个表的功能。
 
     二、 分页控件。
如果说数据访问层是网站的地基,那么分页控件就是“电梯”了。因为这个分页控件是“跨层”的。吴旗娃的分页控件只是工作在UI层,也就是说他的只是绘制页面的部分,而我的分页控件不仅绘制页面,而且还要负责分页算法(组合SQL语句)、访问数据库(调用数据访问层)等工作。
使用分页控件可以减少很多的代码,使页面更简洁,简介到就好像是一层结构一样。
 
   三、 业务逻辑层
网站的业务逻辑是很弱的了,大部分的页面是根本就用不到的,所以呢基本上是被忽略了。忽略了并不等于没有了。在需要的时候加上就可以了。
 
  层与对应的页面
         UI层对应.aspx文件,功能就是把数据和HTML组合在一起,显示给用户浏览。
         业务逻辑层,页面里面没有这个字样,因为它的功能被分散了。
        .aspx.cs文件,就是.aspx文件的后置代码,功能就是负责提供数据。具体点呢就是给分页控件设置属性(列表页面),或者调用数据访问层返回字符串数组(详细页面)。
        .cs文件。这个就很灵活了,根据需要而定,大部分的页面是不需要的。目前它的功能就是会员的登录验证,是否超时的验证等。
        分页控件。
       数据访问层。
      数据库。
 
 

使用的思想并不是面向对象的,而是面向功能的。

使用这种结构已经写了几个网站(比如:www.1380000.com www.1370000.com )了,可以说比较成熟了,至少不是停留在理论上的。


后台管理结构图

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2
点击右上角即可分享
微信分享提示