ASP.NET MVC中的三层架构详解:理解ASP.NET的分层设计
最编程
2024-02-07 09:53:24
...
一、基本概念及说明
ASP.NET三层架构主要包括UI(显示/表示)层、BLL(业务逻辑)层、DAL(数据访问)层。UI层主要用来显示数据,BLL层主要用来控制业务逻辑,有时什么都不做,只是简单作为传值用,而DAL层主要用来控制数据库,进行数据交互。并且还有Model层作为补充,进行参数传递。一般由UI层调用BLL层,BLL层调用DAL层,DAL层返回数据给BLL层,BLL层在接着返回数据给UI层显示数据。
二、三层架构的优势
1.避免了表示层直接访问数据访问层,表示层只和业务逻辑层有联系,提高了数据安全性。
2.有利于系统的分散开发,每一个层可以由不同的人员来开发,只要遵循接口标准,利用相同的对象模型实体类就可以了,这样就可以大大提高系统的开发速度。
3.方便系统的移植,如果要把一个 C/S 的系统变成 B/S 系统,只要修改三层架构的表示层就可以了,业务逻辑层和数据访问层几乎不用修改就可以轻松的把系统移植到网络上。
4.项目结构更清楚,分工更明确,有利于后期的维护和升级。
三、Code
UI 层
<form id="form1" runat="server">
<div>
<asp:Button ID="btnGetData" runat="server" Text="点击" OnClick="btnGetData_Click" />
<asp:GridView ID="GridView1" runat="server"></asp:GridView>
</div>
</form>
//后台代码
protected void btnGetData_Click(object sender, EventArgs e)
{
try
{
DemoBLL bll = new DemoBLL();
DataTable dt = new DataTable();
string sql = "select * from Book";
dt=bll.GetData(sql);
GridView1.DataSource = dt;
GridView1.DataBind();
}
catch (Exception ex)
{
ClientScript.RegisterClientScriptBlock(this.GetType(), "", "<script>alert('错误: \\n" + ex.Message.Replace("'", "\\'").Replace("\r\n", "\\r\\n") + "')</script>");
}
finally
{
}
}
BLL层新建DemoBLL类
public class DemoBLL
{
public DataTable GetData(string sql)
{
DemoDAL dal = new DemoDAL();
DataTable dt = dal.GetData(sql);
return dt;
}
}
DAL层新建DemoDAL类
public class DemoDAL
{
public DataTable GetData(string sql)
{
SqlConnection conn = new SqlConnection();
DataTable dt = new DataTable();
try
{
conn.ConnectionString = "server=.;database=Book;uid=sa;pwd=123456";
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataAdapter sda = new SqlDataAdapter(cmd);
sda.Fill(dt);
return dt;
}
catch (Exception ex)
{
return null;
}
finally
{
if (conn.State == System.Data.ConnectionState.Open)
conn.Close();
}
}
}
三层架构写的一个简单分页(连接字符串改下就行):
下载:https://7lin.lanzous.com/i4IG5gy2zbi 密码:18vh
下一篇: .Net微服务实战之技术架构分层篇(二)
推荐阅读
-
iOS中的MVC与MVVM架构详解:深入理解MVVM模式
-
理解三层次软件架构分解:软件设计的分层结构图示
-
理解JavaEE中的三层架构模型详解
-
实体层详解:在三层架构中的角色与它是否属于设计模式分类
-
理解JavaEE应用架构中的三层划分与MVC模式详解
-
ASP.NET MVC中的三层架构详解:理解ASP.NET的分层设计
-
ASP.NET三层架构详解:理解它的组成部分
-
理解MVC设计模式与三层架构,以及会话技术的关联
-
Linux设备驱动开发详解——学习笔记-设备驱动来联系。在没有操作系统的情况下,工程师可以根据硬件设备的特点自行定义接口。而在有操作系统的情况下,驱动的架构则由相应的操作系统来定义。驱动存在的意义就是给上层应用提供便利。 驱动针对的对象是存储器和外设。Linux将存储器和外设分为 3 个基础大类:字符设备、块设备、网络设备。 字符设备和块设备都被 Linux 映射到文件系统的文件和目录中,通过文件系统的接口(open、read、write、close等)来访问。其中,块设备可以通过类似 dd 命令对应的原始块设备来访问,也可以通过建立文件系统,以文件路径来访问。 学习 Linux 设备驱动,要求非常好的硬件基础、非常好的软件基础、一定的 Linux 内核基础和非常好的多任务并发控制和同步的基础。学习 Linux 设备驱动要将学习的函数、数据结构等放到整体架构中去理解,才能理清驱动中各组成部分之间的关系。 驱动设计的硬件基础 驱动工程师需要掌握 处理器、存储器、接口和总线、可编程门电路、原理图、硬件时序、芯片手册、仪器使用 等方面的内容。 处理器