电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

C#程序设计基础教程 教学课件 ppt 作者 赵华增 张磊 张锋 周春辉 C#程序设计基础教程第6章

89页
  • 卖家[上传人]:E****
  • 文档编号:89342959
  • 上传时间:2019-05-23
  • 文档格式:PPT
  • 文档大小:635.50KB
  • / 89 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、(时间:12次课,24学时),第六章 学习情境:商品采购管理系统数据操作,第六章 商品采购管理系统数据操作,上一章中已经构造了Invoice类(发票ID、发票NO、客户名称、日期、金额合计、填表人、收款人、单位名称)和Commodity类(商品ID、品名、规格、单位、数量、单价、金额、发票NO),本章讲解如何使用LINQ去管理和存放这些类的对象。,第六章 商品采购管理系统数据操作,6.1 学习情境引入 6.2 基础知识1:LINQ语法基础 6.3 基础知识2:O/R设计器 6.4 基础知识3:DataContext类 6.5 综合实训 6.6 实施:实现登录和发票添加功能 6.7 小结,6.1 学习情境引入,6.1.1 项目需求 6.1.2 展示 6.1.3 技术分解,6.1.1 项目需求,有若干发票(每张发票包含多种商品),用计算机的语言说就是有若干Invoice对象和若干Commodity对象,需要在计算机中长期保存,并能在需要的时候查找这些信息,在一定情况下还要修改或者删除某些信息。那么,如何实现这些操作呢?这就需要用到数据库的知识。 数据库是一门专门的技术,这里不做讲解。对于学

      2、生,只需理解数据库就是存储数据的仓库,它将若干类的对象,按照某种特定的规则长期保存在磁盘(或者其他介质)中。需要创建一个数据库文件DBInvoice,把若干Invoice对象和若干Commodity对象保存到数据库文件中,并对其进行查询和管理。,6.1.1 项目需求,1功能性需求 完善登录窗体。在第4.2.3小节中,已经介绍过登录窗体,但那时并没有用到数据库文件的知识,仅仅是简单地应用if语句来实现的。在本章中,登录时首先判断数据库文件是否存在,如果不存在,创建数据库文件,并添加一个用户名为 “admin”,密码为“123”的账户;如果存在,则判断用户名、密码是否正确。 实现发票添加功能。能将发票添加到数据库文件中保存,并能自动计算出金额和金额合计。,6.1.1 项目需求,2非功能性需求 发票添加界面的布局是否合理,尽量参照实际发票的样式。 DataGridView样式设计是否友好。 能否实现金额的自动计算。 执行保存操作时,是否有必要的信息提示对话框。,6.1.2 展示,1用户登录窗体 “用户登录”窗体如图6-1所示。,图6-1 “用户登录”窗体,6.1.2 展示,2发票添加窗体 “

      3、发票添加”窗体如图6-2所示。,图6-2 “发票添加”窗体,图6-2 “发票添加”窗体,6.1.3 技术分解,通过前面章节的学习,窗体和控件应该已经不陌生了,图6-1所示的控件与前面用到的控件是一样的,但是图6-2中所示的DataGridView控件的模样和前面学习的有所不同,这是怎样设置的呢?怎么判断用户输入的用户名和密码是否正确?怎样保存发票信息?要完成这些功能,需要学习如下基础知识。 1LINQ语法基础 LINQ的英文全称是Language Integrated Query,中文翻译为“语言集成查询”,集成在.NET编程语言中。本章需要掌握LINQ查询的基本语法以及部分扩展方法的使用。,6.1.3 技术分解,2O/R设计器 对象关系设计器(O/R 设计器)提供了一个可视化的设计界面,用于创建基于数据库对象的 LINQ to SQL 实体类和关联(关系)。它生成一个DataContext类,用其实例化对象,可在实体类与数据库之间发送和接收数据。对于本书的学习情境来说,可以用它来设计LINQ to SQL 实体类:User类、Invoice类和Commodity类。 3DataCon

      4、text DataContext又称为数据上下文,它为LINQ to SQL提供操作数据库的接口。如果使用LINQ to SQL操作数据库,则首先需要为数据库创建一个继承于DataContext类的子类,并在该子类中定义表、操作数据的方法等。在本书的学习情境中,我们需要创建数据库文件,更新数据库文件,并对其实体对象进行插入和删除操作。,6.2 基础知识1:LINQ语法基础,LINQ语法基础例题 6.2.1 var关键字 6.2.2 基本子句 6.2.3 执行查询,LINQ语法基础例题,LINQ定义了一组标准查询操作符,应用于所有基于.NET平台的编程语言中。标准查询操作符允许查询所有基于IEnumerable接口的数据源,并且还允许自定义扩展操作符来扩大标准查询操作符集。 下面先来看几个关于LINQ的例子,感受一下LINQ的使用方法。,LINQ语法基础例题,【例6-1】 查询整型数组中值大于50的元素,将这些元素显示在ListBox控件中,并在Label控件中显示出满足条件的第1个元素。数组中的元素为:35、84、61、13、79、68、56、57、62、90。 运行结果如图6-3所示

      5、。 双击“buttonQuery”按钮,添加代码。,LINQ语法基础例题,图6-3 “查询整数”程序运行结果,LINQ语法基础例题,private void buttonQuery_Click(object sender, EventArgs e) /定义1个整型数组 int nums = 35, 84, 61, 13, 79, 68, 56, 57, 62, 90 ; /定义能从数组nums中筛选出值大于50的元素的查询语句 var valueQuery = from value in nums where value 50 select value; /清空listBox1 listBox1.Items.Clear(); /执行查询语句,遍历筛选出的元素并将其放入listBox1中 foreach (var v in valueQuery) listBox1.Items.Add(v); /在Label控件中显示出满足条件的第1个元素 labelFirstElement.Text = valueQuery.First().ToString(); ,LINQ语法基础例题,【例6-2】

      6、查询字符串数组中包含“程序设计”字符串的元素,将这些元素显示在ListBox控件中,并在Label控件中显示出满足条件的元素个数。数组中的元素为:“C语言程序设计”、“ASP.NET网站建设”、“C#高级程序设计”、“VB程序设计”、“软件工程”、“VC.NET程序设计”、“数据库设计”、“程序设计模式”。 运行结果如图6-4所示。 双击“buttonQuery”按钮,添加代码。,LINQ语法基础例题,图6-4 “查询字符串”程序运行结果,LINQ语法基础例题,private void buttonQuery_Click(object sender, EventArgs e) string values = “C语言程序设计“, “ASP.NET网站建设“,“C#高级程序设计“,“VB程序设计“, “软件工程“, “VC.NET程序设计“, “数据库设计“, “程序设计模式“ ; var valueQuery = from value in values where value.IndexOf(“程序设计“) -1 select value; listBox1.Items.Clear(

      7、); foreach (var v in valueQuery) listBox1.Items.Add(v); labelElementNumber.Text = valueQuery.Count().ToString(); ,LINQ语法基础例题,【例6-3】 将若干个Invoice对象放入List 中,在DataGridView中显示出满足条件的Invoice对象的信息。Invoice类的定义见第5章。 运行结果如图6-5、图6-6所示。,【例6-3】 将若干个Invoice对象放入List 中,在DataGridView中显示出满足条件的Invoice对象的信息。Invoice类的定义见第5章。 运行结果如图6-5、图6-6所示。,【例6-3】 将若干个Invoice对象放入List 中,在DataGridView中显示出满足条件的Invoice对象的信息。Invoice类的定义见第5章。 运行结果如图6-5、图6-6所示。,【例6-3】 将若干个Invoice对象放入List 中,在DataGridView中显示出满足条件的Invoice对象的信息。Invoice类的定义见第5

      8、章。 运行结果如图6-5、图6-6所示。 图6-5添加代码 图6-6添加代码,LINQ语法基础例题,图6-5 单击第1个按钮时的运行结果,点击查看代码,LINQ语法基础例题,首先将若干个Invoice对象放入List 中,代码如下。 List invoiceList = new List() new Invoice 发票ID = 1, 发票NO = “00462001“, 客户名称 = “职业学院“, new Invoice 发票ID = 2, 发票NO = “00462002“, 客户名称 = “国税局“, new Invoice 发票ID = 3, 发票NO = “00462003“, 客户名称 = “化工集团“, new Invoice 发票ID = 4, 发票NO = “00462004“, 客户名称 = “职业学院“, new Invoice 发票ID = 5, 发票NO = “00462005“, 客户名称 = “化工集团“, new Invoice 发票ID = 6, 发票NO = “00462006“, 客户名称 = “职业学院“, new Invoice 发票ID =

      9、 7, 发票NO = “00462007“, 客户名称 = “职业学院“, new Invoice 发票ID = 8, 发票NO = “00462008“, 客户名称 = “化工集团“, new Invoice 发票ID = 9, 发票NO = “00462009“, 客户名称 = “经贸委“, new Invoice 发票ID = 10, 发票NO = “00462010“, 客户名称 = “职业学院“ ;,LINQ语法基础例题,图6-6 单击第2个按钮时的运行结果,点击查看代码,LINQ语法基础例题,双击第1个按钮,添加如下代码。 private void buttonQueryAll_Click(object sender, EventArgs e) var invoiceQuery = from invoice in invoiceList select invoice; dataGridView1.DataSource = invoiceQuery.ToList(); 双击第2个按钮,添加如下代码。 private void buttonQueryByClient_Click(object sender, EventArgs e) var invoiceQuery = from invoice in invoiceList where invoice.客户名称 = “职业学院“ select new invoice.发票ID, invoice.发票NO, invoice.客户名称, invoice.收款人 ; dataGridView1.DataSource = invoiceQuery.ToList(); ,6.2.1 var关键字,在C#3.0中,提供了一种新的声明变量的方式var。通过这个关键字,在声明变量时就无需指定类型了,变量的类型是在初始化时由编译器确定的,例如: var ss = “Hello, world!“; MessageBox.Show(ss.GetType().ToString(); 上面的代码将显示Syst

      《C#程序设计基础教程 教学课件 ppt 作者 赵华增 张磊 张锋 周春辉 C#程序设计基础教程第6章》由会员E****分享,可在线阅读,更多相关《C#程序设计基础教程 教学课件 ppt 作者 赵华增 张磊 张锋 周春辉 C#程序设计基础教程第6章》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.