首页 > .NET三层架构

.NET三层架构

     三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。

      1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。

  2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。

  3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增、删、改、查。



表示层

  
 位于最外层(最上层),离用户最近。用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。

业务逻辑层

      
主要负责对数据层的操作。也就是说把一些数据层的操作进行组合。该模块从数据访问层获得数据,提供给表示层。

数据访问层

      其功能主要是负责数据库的访问,可以访问数据库系统、二进制文件、文本文档或是XML文档。

  简单的说法就是实现对数据表的Select,Insert,Update,Delete的操作。



三层结构的优点:

提高代码的可重用性

重复的代码不用再写

降低耦合

如果我们要修改业务逻辑,那最好只修改一处位置,而不是在不同的页面一个个替换。各自相对独立,尽可能降低各自之间的干扰。

转载于:https://www.cnblogs.com/flora_asp_net/archive/2009/08/06/1540768.html

更多相关:

  • 本文是西门子开放式TCP通信的第2篇,上一篇我们讲了使用西门子1200PLC作为TCP服务器的程序编写,可以点击下方链接阅读:【公众号dotNet工控上位机:thinger_swj】基于Socket访问西门子PLC系列教程(一)在完成上述步骤后,接下来就是编写上位机软件与PLC之间进行通信。上位机UI界面设计如下图所示:从上图可以看出...

  • 我有一个大型数据集,列出了在全国不同地区销售的竞争对手产品。我希望通过使用这些新数据帧名称中的列值的迭代过程,根据区域将该数据帧分成几个其他区域,以便我可以分别处理每个数据帧-例如根据价格对每个地区的信息进行排序,以了解每个地区的市场情况。我给出了以下数据的简化版本:Competitor Region ProductA Product...

  • 作为一名IT从业者,我来回答一下这个问题。首先,对于具有Java编程基础的人来说,学习Python的初期并不会遇到太大的障碍,但是要结合自己的发展规划来制定学习规划,尤其要重视学习方向的选择。Java与Python都是比较典型的全场景编程语言,相比于Java语言来说,当前Python语言在大数据、人工智能领域的应用更为广泛一些,而且大...

  • 这段时间通过学习相关的知识,最大的变化就是看待事物更加喜欢去了解事物后面的本质,碰到问题后解决问题思路也发生了改变。举个具体的例子,我在学习数据分析,将来会考虑从事这方面的工作,需要掌握的相关专业知识这个问题暂且按下不表,那哪些具体的问题是我需要了解的呢,以下简单罗列:1、了解数据分析师这个岗位在各个地区的需求情况?2、数据分析师的薪...

  • 这一节将开始学习python的一个核心数据分析支持库---pandas,它是python数据分析实践与实战的必备高级工具。对于使用 Python 进行数据分析来说,pandas 几乎是无人不知,无人不晓的。今天,我们就来认识认识数据分析界鼎鼎大名的 pandas。目录一. pandas主要数据结构 SeriesDataFrame二...

  • 一次手贱更新了上面这个驱动,结果: Fn+F2/F3不能控制亮度win+X弹出来的下面这个窗口“显示器亮度”不见了 电源选项里面底部“屏幕亮度”也不见了 我研究了三天,各种骚操作都试过了,最后找到解决方案: win+R 输入 devmgmt.msc 回车,按照下图操作,瞬间亮度恢复正常 ...

  • 第一种:需要刷新当前页面重复执行的操作——使用场景:刷点击率 、秒杀活动、抢沙发   //自动化循环操作方法 var doLoop = function (dom) {dom || (dom = document);//这里写循环操作的代码dom.querySelector("sel").innerHTML = "舒工的骚操作!!...

  • Ubuntu常用操作外观操作修改应用icon图标终端美化内存管理内存查询分区管理日志清理操作执行自动执行多条命令...

  • 文章目录前言工业级 LRU Cache1. 基本架构2. 基本操作2.1 insert 操作2.2 高并发下 insert 的一致性/性能 保证2.3 Lookup操作2.4 shard 对 cache Lookup 性能的影响2.4 Erase 操作2.5 内存维护3. 优化...

  • 最近利用vim做一些文本处理时 发现vim 支持的键盘宏是一个好东西啊,高效优雅得处理大量需要重复性操作的文本,让人爱不释手!!! 希望接下来对键盘宏的分享能够实际帮助到大家。 后文中描述的一些vim操作会汇集成指令字符串,方便大家参考。 1. 场景描述 在分享键盘宏之前,先看这样一个文本操作需求: 对如下文本增加ma...

  •  10月6日,惠普公司对外宣布,将公司拆分为两家独立的上市公司,其中,惠普企业(Hewlett-Packard Enterprise)的业务由惠普领先的企业技术基础架构业务、软件业务和服务业务组成,而惠普公司(HP Inc)的业务则由惠普领先的个人系统业务和打印业务组成。无独有偶,10月10日 ,赛门铁克公司宣布,公司董事会一致批准将...

  • 我撰写的一些关于RUP的讲义,PDF格式,可在文后点击“附件下载”阅读全文。   本篇内容简介及部分截图: ◇ 业务建模是什么 ◇ 为什么需要业务建模 ◇ 业务建模的主要工作内容 ◇ 业务建模的相关工作成果 ◇业务建模所关注的领域 ◇ RUP业务建模的规程 ◇ 业务建模的建立过程 ◇ 建立业务用例的实现 ◇ 业务模型向系统模型转换...