基于C#实现的三层架构实例
2023-06-13 09:15:42 时间
本文所述为基于C#实现的三层架构。对于三层的概念查相信大家并不陌生,这里举一个关于三层的简单实例,真正看一下它是如何具体实现的.
我们先来一起看看实体类-Model
实质:实体类就是在完成数据库与实体类对应的功能,一个类是一张表,一个属性是一个字段!
usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; namespacemodel { publicclassUser { publicUser(){} privatestring_name; publicstringname { set{_name=value;} get{return_name;} } } }
再来说明一下,这个实例应用了配置文件来访问数据库,当然我们在做的时候可以使用SqlHelper,也可以将连接数据库的这些代码直接放在D层
<addname="ConnectionString"connectionString="DataSource=localhost;InitialCatalog=tester;UserID=sa;Password=123456"providerName="System.Data.SqlClient"/>
三层中的最底层-数据访问层(DAL) 这一层要引用实体类和对Configuration的引用
实质:
usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingmodel; usingSystem.Data; usingSystem.Configuration; usingSystem.Data.SqlClient; namespaceDAL { publicclassUserDB { publicboolUser_add(model.Usermodel) { stringsetting=ConfigurationManager.ConnectionStrings["ConnectionString"].ToString(); SqlConnectionmyconn=newSqlConnection(setting); myconn.Open(); SqlCommandcmd=newSqlCommand("insertintodbo.[user]([name])values(@name)",myconn); cmd.Parameters.AddWithValue("@name",model.name); if(cmd.ExecuteNonQuery()>0) { returntrue; } else { returnfalse; } } } }
三层中的桥梁-业务逻辑层BLL 这一层需要引用实体类和数据访问层
实质:
usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingDAL; namespaceBLL { publicclassuserBLL { DAL.UserDBdb=newUserDB(); publicbooladdUser(model.Usermodel) { returndb.User_add(model); } } }
三层中的顶层-表现层UI 这一层要引用实体类和业务逻辑层
实质:
usingSystem; usingSystem.Collections.Generic; usingSystem.ComponentModel; usingSystem.Data; usingSystem.Drawing; usingSystem.Linq; usingSystem.Text; usingSystem.Windows.Forms; usingBLL; usingmodel; namespace登陆 { publicpartialclassForm1:Form { publicForm1() { InitializeComponent(); } privatevoidbutton1_Click(objectsender,EventArgse) { model.UserthisUser=newUser(); thisUser.name=TB_username.Text.ToString(); BLL.userBLLuB=newuserBLL(); if(uB.addUser(thisUser)) { MessageBox.Show("true"); } else { MessageBox.Show("false"); } } } }
三层之间的关系如下图所示:
解释:
上述代码中DAL主要是对数据库中的内容的操作,在这里就是向数据库中添加用户。BLL则主要是调用DAL层的操作,返回DAL层添加用户的结果(true或者false)。这样也就是在客户端与数据库中加了一个中间层,使得两层的依赖性减小。UI层则主要完成响应用户的需求,去调用BLL层实现的adduser方法,DAL层就是实实在在做这件事情的操作。
相关文章
- Unity 3D/C# 错题集
- C#-TreeView
- 【愚公系列】2023年02月 .NET/C#知识点-使用控制台手搭webapi框架
- C#获取系统进程的用户名
- c#钩子学习笔记
- C#读写操作app.config中的数据应用介绍
- C#制作鹰眼的详细全过程(带注释)实例代码
- c#数据库与TXT导入导出的实例
- C#中将ListView中数据导出到Excel的实例方法
- C#编写的windows计算器的实例代码
- c#实现sunday算法实例
- c#应用事务的简单实例
- 关于C#程序优化的五十种方法
- C#获取全部目录和文件的简单实例
- c#的异或运算符介绍
- c#编写webservice服务引用实例分享
- C#实现左截取和右截取字符串实例
- C#语音识别用法实例
- C#生成饼形图及添加文字说明实例代码
- C#中的lock、Monitor、Mutex学习笔记
- C#实现闹钟AlarmClock实例代码
- 使用C#的aforge类库识别验证码实例
- C#中Action和Func的区别
- C#利用GDI+绘制旋转文字等效果实例