.NET分层是怎么回事 三层架构与其又有什么关系,能否帮忙简单介绍一下三层架构?

作者&投稿:旁弯 (若有异议请与网页底部的电邮联系)
什么是.net三层架构~

3层用最通俗的语言来说
底成是数据库 中间是逻辑层 外面是表示层
低层数据库嘛 当然是存放数据的
中间的逻辑层就是来计算和控制以及联系 上下2层的
表示成就不用说了 就是给客户看的 直接用来操作的
。。。。这3层应该什么关于。NET的基础书籍上都有说明的把

在过去应用系统开发过程中,CLIENT/SERVER体系结构得到了广泛的应用 。其特点是,应用程序逻辑通常分布在客户和服务器两端,客户端发出数据资源访问请求,服务器端将结果返回客户端。但CLIENT/SERVER结构存在着很多体系结构上的问题,比如:当客户端数目激增时,服务器端的性能会因为负载过重而大大衰减;一旦应用的需求发生变化,客户端和服务器端的应用程序都需要进行修改,给应用维护和升级带来了极大的不便;大量的数据传输增加了网络的负载等等。
所谓三层体系结构,是在客户端与数据库之间加入了一个"中间层",也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。
三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交互
想要知道比较书面华的那就去百度查饿 很多的拉

为何使用N层架构?

因为每一层都可以在仅仅更改很少量的代码后,就能放到物理上不同的服务器上使用,因此结构灵活而且性能更佳。此外,每层做些什么其它层是完全看不到的,因此更改、更新某层,都不再需要重新编译或者更改全部的层了。这是个很强大的功能。例如,如果把数据访问代码与业务逻辑层分离,当数据库服务器更改后,你只需要更改数据访问的代码,因为业务逻辑层是不变的,因此不需要更改或者重新编译业务逻辑层。

一个N层的应用程序通常有三层:表现层、业务层和数据层。下面让我们看看每层都做些什么。

表现层(Presentation Layer)

表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。

在ASP.NET中,该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。

业务层(Business Tier)

业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。

在ASP.NET中,该层包括使用SqlClient或OleDb从SQL Server或Access数据库取数据、更新数据及删除数据,并把取得的数据放到DataReader或DataSet中返回给表现层。返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。



BLL和DAL

通常该层被划分成两个子层:业务逻辑层(Business Logic Layer,BLL)和数据访问层(Data Access Layers,DAL)。业务逻辑层在数据访问层之上,也就是说BLL调用DAL的类和对象。DAL访问数据并将其转给BLL。

在ASP.NET中,该层可以用SqlClient或OleDb从SQL Server或Access数据库取数据,把数据通过DataSet 或DataReader的形式给BLL,BLL处理数据给表现层。有的时候,例如直接把DataSet 或DataReader送给表现层的时候,BLL是一个透明层。

数据层(Data Tier)

数据层是数据库或者数据源。在.NET中,通常它是一个SQL Server或Access数据库,但不仅限于此两种形式,它还可能是Oracle,mySQL,甚至是XML。

逻辑层VS(分布式)物理层

人们容易将这两个概念搞混。我们说逻辑层是把层按类的集合来划分,而这些层都在同一台个服务器上。(分布式)物理层是指类的集合在不同的服务器上,用附加的代码来处理层间的通信,比如remoting和web服务。

决定如何划分你的层(是物理的还是不是物理的)是非常重要的。在划分时应考虑下面因素:

1、注意如果划分成物理层,你的应用程序的速度会因为不同服务器在网络中通信的延迟而减慢。所以,如果你决定用物理层,请确保获得性能的提升大于性能的降低。

2、按照n层架构设计你的应用程序。

3、部署以及维护物理分布式的应用程序的成本是很高的。你首先需要不止一台服务器,你还需要网络硬件来连接这些服务器。在这种情况下,部署应用变得更加复杂!因此这样做之前请确定这样做是否值得。

另外还要注意,你的应用程序的每层都做何使用。你也许因为运行的多个服务都需要某一层而把该层放到别台服务器上。例如,你也许会因为给不同的用户定制不同的表现层,而将业务逻辑层放于别处;你也许会因为还有其它的应用访问同一个数据库,而把SQL server服务放到别处。

三层结构是现在开发中常用的开发模式
三层构架即MVC(model-view-control)
model:模型层,这里主要放置业务逻辑,也就是处理的一些方法,包括数据的交互
view:视图层,这里就是做出来呈现给客户的界面,即网页或客户端的一些窗体界面
control:控制层,这里组要负责业务逻辑的调用,以及返回的页面控制,就好比交通的指挥中心

分布式应用开发简单的说,是指将用户界面、控制台服务、数据库管理三个层次部署在不同的位置上。其中用户界面是客户端实现的功能,控制台服务是一个专门的服务器,数据管理是在一个专门的数据库服务器上实现的。

软件工程的方法也就是从软件的可行性分析→项目计划→需求分析→概要设计→详细设计→编码→测试→维护。这样一系列的步骤进行科学的开发。掌握软件工程的方法对于软件开发的好与坏有着重要的关联。

分层是为了更好地管理,可以有多层,简单的三层,数据逻辑层,业务层,表现层。


如何做好.NET三层框架的项目?
当然这个“执行速度”是相对于非分层的应用程序来说的。从文中所给出的时序图来看,也明显的暴露了这一缺点。TraceLWord1和TraceLWord2没有分层,直接调用的ADO.NET所提供的类来获取数据。但是,TraceLWord6确要经过多次调用才能获取到数据。在子程序模块程序没有返回时,主程序模块只能处于等待状态。所以...

(.NET)为什么要有业务逻辑层???
业务逻辑层在体系架构中的位置很关键,它处于数据访问层与表示层中间,起到了数据交换中承上启下的作用。由于层是一种弱耦合结构,层与层之间的依赖是向下的,底层对于上层而言是“无知”的,改变上层的设计对于其调用的底层而言没有任何影响。如果在分层设计时,遵循了面向接口设计的思想,那么这种向下...

用.NET做B\/S结构的系统,用几层结构来开发,每一层之间的关系以及为什么要...
简单的分三层:表示层(.aspx)、业务逻辑层(.cs)、数据持久层(数据库)表示层里做页面,调用数据并显示。业务逻辑层里写数据的处理代码,用来实现系统的功能。数据持久层里存放数据,与程序分离,如果采用SQLServer等有管理后台的,做一些视图、存储过程,会使你的数据访问效率大增。

用.net做B\/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什 ...
分三层,即采用MVC的模式,可大大缩短编程的时间,节约成本,其次,以后维护起来也方便!第一层--表示层:即视图,用来与客户交互。第二层--业务逻辑层:即业务类,所有的相关的业务全部放在这个层里面。第三层--数据访问层:即与数据库进行交互。

enthernet、isdn、atm、novell各是什么?
enthernet 以太网 为了便于多媒体信息在网罗上传输isdn 综合数字业务网atm 异步传输模式novell 是一种网络操作系统 本回答被提问者采纳 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 其他类似问题 2011-01-11 哪种ATM协议最适合应用话音业务 2011-09-18 ISDN和atm分别什么意思? 2006-09-30 ISDN和ATM...

如何理解ASP.NET三层架构与ASP.NET MVC
MVC也是一种开发模式(同时也是广义上的3层架构,Php和java也有相应的MVC框架),故名思议就是模型(Model,负责业务逻辑和数据存取)、视图(VIEW,负责暂时的模板)和控制器(CONTROLLER,负责展示的逻辑),三者逻辑上分离!为什么说是广义的3层?因为在Model这层里面,你可以根据需要再分层,比如将业务...

Asp.net mvc和asp.net有什么区别?
Asp.net Mvc架构模式是一种低耦合、可测试的web应用程序框架,它是基于CLR和成熟的MVC架构构建的。ASP.NET MVC不支持ViewState和服务器控件。优点:1、有对数据直接访问的权利,如:对数据库的访问;2、模型(Model)“不依赖”视图(View)和控制器(Controller),即模型(Model)不关心它会被如何显示...

什么是cluster技术
三.市场前景集群技术已经发展了多年,其中的分支也非常多。目前集群技术正逐渐走向分层结构,以后也肯定会有专门用户前端、后端的集群产品出现。随着计算机应用地位的逐渐提升,系统安全和重要性的日益增加,集群技术必将会有着极为广阔的应用前景。 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 ...

vb.net控件treeview从数据库获得数据分层显示
说实话一般不是你这样存储的,一般是用一个字段存储ID号,然后用另一个字段存储上级单位的ID号,然后用递归函数生成TreeView。建议你增加一个字段,然后将编号解析出的上级单位存储在里面。以下是我的一个程序用的递归函数:表名是unit,其中包含了单位名称unit_name,编号unit_id,Unit_upper就是上级单位...

ASP.net中所说的三层架构是指什么
控制用户输入,并向模型发送数据。MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。例如,您可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。

长沙市15095893126: .NET分层是怎么回事 三层架构与其又有什么关系,能否帮忙简单介绍一下三层架构? -
丰仪达力: 三层结构是现在开发中常用的开发模式 三层构架即MVC(model-view-control) model:模型层,这里主要放置业务逻辑,也就是处理的一些方法,包括数据的交互 view:视图层,这里就是做出来呈现给客户的界面,即网页或客户端的一些窗体界...

长沙市15095893126: .NET三层架构解析一:什么是三层架构 -
丰仪达力: 所谓三层架构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层.这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这...

长沙市15095893126: 什么是.net三层架构 -
丰仪达力: 3层用最通俗的语言来说 底成是数据库 中间是逻辑层 外面是表示层 低层数据库嘛 当然是存放数据的 中间的逻辑层就是来计算和控制以及联系 上下2层的 表示成就不用说了 就是给客户看的 直接用来操作的 ....这3层应该什么关于.NET的...

长沙市15095893126: 如何理解.net的三层架构 -
丰仪达力: 3、表示层:主要表示WEB方式,也可以表示成WINFORM方式,WEB方式也可以表现成:aspx, 如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务. 具体的区分方法 1、数据数据访问层:主要看你的数据...

长沙市15095893126: .net 三层结构(200分求解释) -
丰仪达力: 我也简单的说一下,然后举个例子,希望你能懂 三层,一般包含:数据访问层:也叫 DataAccess层、DAL(DataAccess Layer层),这一层的工作就是与数据库或其它文件打交道,业务逻辑层:也叫中间层,Bussiness Logical layer,也可说是...

长沙市15095893126: NET三层架构概念什么?代码演示看一下 -
丰仪达力: 有的项目开发的过程中,把整个项目分为三层,其中包括:表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL).这是三层架构.表示层:为用户提供交互操作界面,这一点不论是对于Web还是WinForm都是如此,就是用户界面操作.主要...

长沙市15095893126: .net 三层架构是什么东东 -
丰仪达力: 所谓三层体系结构,是在客户端与数据库之间加入了一个"中间层",也叫组件层,该层负责处理业务逻辑的实现.这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结...

长沙市15095893126: 什么事是.net三层框架? -
丰仪达力: 建一个解决方案,下面有一个可以运行的项目(可以是控制台,winform,或web项目或web网站),还有三个类库项目,实际上一般就是四层,分别是数据访问层 业务逻辑层 实体层 表现层, 可运行的那个项目就是表现层,他们之间有依赖关系,分别是表现层依赖业务逻辑层,业务逻辑层依赖数据库访问层,他们所有的层一般都依赖实体层,实体层实际起到的是传递书据的作用

长沙市15095893126: .NET 三层架构 是什么,其各自的作用是什么
丰仪达力: 数据访问层——负责与数据源的交互,即数据的插入、删除、修改以及从数 据库中读出数据等操作.对数据的正确性和可用性不负责,对数据的用途不了解, 不负担任何业务逻辑. 业务逻辑层——负责系统领域业务的处理,负责逻辑性数据的生成、处理及 转换.对流入的逻辑性数据的正确性及有效性负责,对流出的逻辑性数据及用户 性数据不负责,对数据的呈现样式不负责. 表示层——负责接收用户的输入、将输出呈现给用户以及访问安全性验证. 对流入的数据的正确性和有效性负责,对呈现样式负责,对呈现友好的错误信息 负责.

长沙市15095893126: net三层结构怎么说,有没有简单的例子呢? -
丰仪达力: 一般来说分为 数据访问层,业务逻辑层,表示层. 三层是一种思想,理解就行了,并没有固定的格式.微软官方的例子看起来挺麻烦的,其实也就是简单的三层.你如果嫌麻烦,可以在网上找一个简单的例子. 很容易理解的.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网