基本信息
文件名称:三层架构在Windows程序中应用与优化.pptx
文件大小:997 KB
总页数:30 页
更新时间:2026-03-11
总字数:约2.61千字
文档摘要

第六章实体类在Windows程序中的高级应用

回顾与作业点评三层架构有哪三层?依赖关系如何?三层架构有什么优点?

预习检查什么是业务实体?使用DataGridView显示多表数据有哪些方式?

本章任务实现年级、科目ComboBox的联动实现成绩表和学生表的多表查询

本章目标掌握如何动态关联两个下拉列表掌握使用实体类实现DataGridView的筛选掌握如何使用实体类实现多表查询

ComboBox的数据绑定使用ComboBox绑定实体集合this.cboGrade.ValueMember=GradeId;this.cboGrade.DisplayMember=GradeName;this.cboGrade.DataSource=GradeManager.GetGradeData();获取实体集合实体属性名实体属性名

ComboBox的数据联动如何实现ComboBox的数据联动?使用ComboBox的SelectedIndexChanged事件演示示例:年级和科目的数据联动

练习——实现年级和科目的联动需求说明:创建“查看成绩信息”窗体查询条件包括年级、科目和姓名年级和科目使用ComboBox显示数据实现年级和科目的联动效果完成时间:20分钟

共性问题集中讲解常见调试问题及解决办法代码规范问题共性问题集中讲解

使用DataGridView显示数据设置DataGridView控件和各列(Columns)的属性设置DataSource属性,绑定数据源DataGridView各列的主要属性属性名称说明HeaderText列标题文本Visible指定列是否可见ReadOnly指定单元格是否为只读DataPropertyName绑定的数据列的名称回顾:使用DataGridView显示数据

显示关联表数据如何显示多个表关联的数据?学生信息表科目表成绩表

显示关联表数据—分析1每一行数据对应多个实体

显示关联表数据—分析2方法1:DataGridView先绑定Result,然后获取Student和Subject数据Result实体数据绑定Student实体Subject实体

显示关联表数据—分析3方法2:构造满足显示要求的实体

使用辅助列显示关联表数据2-1辅助列:作为中间数据的隐藏列演示示例:使用辅助列查询成绩

使用辅助列显示关联表数据2-2表示层关键代码foreach(DataGridViewRowrowinthis.dgvResult.Rows){intid=(int)(row.Cells[SubjectNo].Value);row.Cells[SubjectName].Value=subjectManager.GetSubjectDataBySubjectId(id).SubjectName;intstuNo=(int)(row.Cells[StudentNo].Value);row.Cells[StudentName].Value=studentManager.GetStudentNameById(stuNo);}辅助列辅助列

指导——实现学生成绩查询2-1训练要点:使用SqlParameter传递参数需求说明:在数据访问层实现查询学生成绩的方法支持按科目编号和学生姓名组合查询学生姓名为模糊查询在业务逻辑层调用数据访问层的方法讲解需求说明

指导——实现学生成绩查询2-2实现思路:查询所有科目学生的成绩,设定subjectNo参数为-1查询指定科目所有学生的成绩,设定stuName参数为null使用where1=1连接查询条件完成时间:20分钟SELECTa.*FROMRESULTaJOINstudentbONa.studentno=b.studentnoWHERE1=1ANDa.subjectNo=@SubjectNo

练习——实现学生成绩查询需求说明:在上一练习基础之上实现完整的学生成绩查询功能完成时间:20分钟

共性问题集中讲解常见调试问题及解决办法代码规范问题共性问题集中讲解

使用组合框栏显示关联表数据演示示例:使用组合框栏查询成绩起到辅助列的作用,而不需要添加额外的列

使用组合框栏的步骤1、设置属性DisplayStylecbo.DisplayStyle=DataGridViewComboBoxDisplayStyle.ComboBox;2、绑定外键表数据cbo.