




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单元7 综合应用C#程序设计 课程概述学习内容什么是三层架构和实体类0102如何搭建三层架构目录页 PAGE OF CONTENT01新建项目02认识项目文件03开始编写C#代码04编译、调试项目知识点名称 根据自己的需要添加适当的文字,据研究,在幻灯片中,一页的文字最好不要超过200字 根据需要添加适当的文字,据研究,在幻灯片中,一页的文字最好不要超过200字 根据自己的需要添加适当的文字,据研究,在幻灯片中,一页的文字最好不要超过200字 根据自己的需要添加适当的文字,据研究,在幻灯片中,一页的文字最好不要超过200字添加内容添加内容添加内容添加内容什么是三层架构和实体类011什么是三层架
2、构和实体类一种代码的组织形式,其中包括:表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL)1)表示层:为用户提供交互操作界面,用于显示和接收用户提交的数据,为用户提供交互式的界面。表示层一般为Windows窗体应用程序或Web应用程序。2)业务逻辑层:负责关键业务的处理和数据的传递,不会直接对数据库中的数据进行操作,该层一般为类库。3)数据访问层:负责数据库数据的访问,根据传入的值来操作数据库,实现对数据的读取、保存和更新等操作。数据访问层通常为类库。1什么是三层架构和实体类为便于在各层间传递数据,通常再添加一个类库,即实体类库。其中封装的每个类都对应一个实体,即数据库中的一张表。如何
3、搭建三层架构02如何搭建三层架构2将【例6.8】中显示表T_Stu学生信息的代码用三层架构来重新进行组织1)创建表示层2)创建业务逻辑层3)创建数据访问层4)创建实体类5)添加各层之间依赖关系如何搭建三层架构2添加代码1)在实体类库定义类Student2)在数据访问层定义数据库操作类DBHelper3)在数据访问层定义数据访问类StuService4)在业务逻辑层定义类StuManager5)编写表示层单元7 综合应用C#程序设计 课程基于三层架构操作数据学习内容什么是三层架构和实体类0102如何搭建三层架构目录页 PAGE OF CONTENT01实现学生信息的添加02实现学生信息的修改03
4、实现学生信息的删除知识点名称 根据自己的需要添加适当的文字,据研究,在幻灯片中,一页的文字最好不要超过200字 根据需要添加适当的文字,据研究,在幻灯片中,一页的文字最好不要超过200字 根据自己的需要添加适当的文字,据研究,在幻灯片中,一页的文字最好不要超过200字 根据自己的需要添加适当的文字,据研究,在幻灯片中,一页的文字最好不要超过200字添加内容添加内容添加内容添加内容实现学生信息的添加01实现学生信息的添加1(1)在数据访问层类StuService中添加AddStudent方法 public bool AddStudent(Student newStu) string sqlStr
5、 = insert into T_Stu values(ID,name,age); SqlParameter param = new SqlParameter new SqlParameter(ID,newStu.ID), new SqlParameter(name,newStu.Name), new SqlParameter(age,newStu.Age) ; return DBHelper.ExcuteCommand(sqlStr, param); 实现学生信息的添加(2)在业务逻辑层类StuManager中添加AddStudent方法 public bool AddStudent(Stu
6、dent newStu) return stu.AddStudent(newStu); 1实现学生信息的添加(3) 在表示层获取输入的学生信息 private void btnAdd_Click(object sender, EventArgs e) Student newStu=new Student(); newStu.ID = int.Parse(txtID.Text); newStu.Name = txtName.Text; newStu.Age = int.Parse(txtAge.Text); if (stu.AddStudent(newStu) MessageBox.Show(添
7、加成功); dataGridView1.DataSource = stu.GetStudentList(); else MessageBox.Show(添加失败); 1实现学生信息的修改02实现学生信息的修改2(1)在数据访问层类StuService中添加UpdateStudent方法 public bool UpdateStudent(Student stu) string sqlstr = update T_Stu set name=name,age=age where ID=id; SqlParameter param = new SqlParameter new SqlParamete
8、r(name,stu.Name), new SqlParameter(age,stu.Age), new SqlParameter(ID,stu.ID) ; return DBHelper.ExcuteCommand(sqlstr, param); 实现学生信息的修改2(2)在业务逻辑层类StuManager中添加UpdateStudent方法 public bool UpdateStudent(Student s) return stu.UpdateStudent(s); 实现学生信息的修改2(3)在表示层获取要修改的学生信息 private void dataGridView1_CellC
9、lick(object sender, DataGridViewCellEventArgs e) if (dataGridView1.SelectedRows.Count = 0) MessageBox.Show(请选中一行进行操作); return; txtID.Text = dataGridView1.SelectedRows0.Cells0.Value.ToString(); txtName.Text = dataGridView1.SelectedRows0.Cells1.Value.ToString(); txtAge.Text = dataGridView1.SelectedRow
10、s0.Cells2.Value.ToString(); private void btnUpdate_Click(object sender, EventArgs e) if (dataGridView1.SelectedRows.Count = 0) MessageBox.Show(请选中一行进行操作); return; Student newStu = new Student(); newStu.ID = int.Parse(dataGridView1.SelectedRows0.Cells0.Value.ToString(); newStu.Name = txtName.Text; ne
11、wStu.Age = int.Parse(txtAge.Text); /保存修改 if (stu.UpdateStudent(newStu) MessageBox.Show(修改成功); dataGridView1.DataSource = stu.GetStudentList(); else MessageBox.Show(修改失败); 实现学生信息的删除03实现学生信息的删除3(1)在数据访问层类DBHelper中添加ExcuteCommand方法的重载 public static bool ExcuteCommand(List sqlStr, List param) int i = 0;
12、 SqlCommand cmd = new SqlCommand(); using (TransactionScope ts = new TransactionScope() cmd.Connection = conn; conn.Open(); try foreach (string item in sqlStr) cmd.CommandType = CommandType.Text;cmd.CommandText = item; cmd.Parameters.AddRange(parami); /添加参数 cmd.ExecuteNonQuery();/执行SQL语句并返回受影响的行数 i+
13、; ts.Complete(); return true; catch return false; finally conn.Close(); sqlStr.Clear(); (2)在数据访问层类StuService中添加DelStudent方法 public bool DelStudent(int id) List strSqls = new List();/创建集合对象 List param = new List(); string strDelete1 = delete From T_Stu where ID = id;/定义删除表T_Stu的SQL语句 strSqls.Add(strD
14、elete1);/将SQL语句添加到集合中 SqlParameter param1 = new SqlParameter new SqlParameter(ID,id) ; param.Add(param1); string strDelete2 = delete From T_SC where Sno = sno;/定义删除表T_SC的SQL语句 strSqls.Add(strDelete2);/将SQL语句添加到集合中 SqlParameter param2 = new SqlParameter new SqlParameter(sno,id) ; param.Add(param2); r
15、eturn DBHelper.ExcuteCommand(strSqls, param); 实现学生信息的删除3(3)在业务逻辑层类StuManager中添加DelStudent方法 public bool DelStudent(int id) return stu.DelStudent(id); 实现学生信息的删除3(4)在表示层获取待删除学生的学号 private void btnDel_Click(object sender, EventArgs e) int id; if (dataGridView1.SelectedRows.Count = 0) MessageBox.Show(请选中一行进行操作); return; id = int.Parse(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医疗行业大数据隐私保护在2025年医疗数据安全事件应急处理中的应用报告
- 离职无解除劳动合同协议
- 油漆墙体广告合同协议书
- 风险合同协议书模板模板
- 风电场风机维修合同范本
- 项目居间三方合同协议书
- 鸽子销售饲养协议书模板
- 联合建房合同协议书范本
- 父母房屋补偿协议书范本
- 汽车委托交易合同协议书
- 滴灌通收入分成协议合同
- 遂宁市射洪市招聘社区专职工作者考试真题2024
- 2024中储粮集团财务限公司人员招聘公开招聘历年考点共500题附带答案
- 村务监督主任培训会-深化整治群众身边不正之风 筑牢基层监督防线
- 药品追溯管理制度培训
- 2025年广东省中考英语试卷真题及答案详解(精校打印版)
- T/CBMCA 017-2021建筑用覆膜钢板
- GB/T 20424-2025重有色金属精矿产品中有害元素的限量规范
- 矿山开工报告范本
- 干部履历表(中共中央组织部2015年制)
- 一诺LZYN质量流量计使用说明书-2009版
评论
0/150
提交评论