培训第三周 (本周的内容非常实用、后续项目开发中可能会用的很多)
由于疫情影响不能开多人会议,本周不进行培训讲座、培训采用资料自学+练习题的形式。
资料自学的要求与上周相同:
1. 自学需要记笔记(Word,Excel,PowerPoint… 都可以)
(注意笔记会在下周一进行检查。)
2. 大家应该都对 Java 非常熟悉了,在自学 C# 资料时注意与 Java 进行对比,
找异同点并记在笔记中。
3. 资料不能光看,一定要动手敲代码。
4. 不只是看指定的资料,不懂、不清楚、想了解更多的地方自己去查其他资料
资料:
[A] 集合及基础的 foreach 迭代器:
集合的概念和基本操作与Java非常类似,注意找与Java的区别
https://docs.microsoft.com/zh-cn/dotnet/standard/collections/commonly-used-collection-types
https://docs.microsoft.com/zh-cn/dotnet/standard/collections/selecting-a-collection-class
https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/concepts/iterators#using-iterators-with-a-generic-list
[B] LINQ入门
我们平时写业务代码,其实很大部分都是针对集合的各种操作,比如搜索、排序、多集合关联查询、集合合并、集合成员变换、List to Map、Count、按条件取最大最小。。。
传统 Java 中,这些操作都要手动写各种循环来做;在 C# 中用我们使用简洁易懂、灵活优雅的 LINQ 语句来实现
https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/concepts/linq/introduction-to-linq-queries
https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/concepts/linq/basic-linq-query-operations
https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/concepts/linq/data-transformations-with-linq
https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/concepts/linq/walkthrough-writing-queries-linq
[C] WinForm开发(第一部分)
本次培训的直接目的是为了今年的项目做技术准备,预计该项目中用到C#的领域集中在客户端画面开发,有很大可能会使用Windows Forms框架。
故本次培训从本周开始侧重WinForm开发。
这里提供一个教程文件:WinForm 实践开发教程.pdf (时间仓促找的这个书比较老是面向 .NET Framework 2 的,不过 WinForm 基础的那些东西应该是不会变的)
本周学习第一章的二三节:
再次强调不要光看书,要敲代码!
练习题:
 

 

                             
  培训第三周                    
  编程练习                      
    编程练习1 —— LINQ查询练习                
      现在已知三个数据源(在练习时可用手动创建填充数据的 List<Xxx>来代表,实际项目中可能来自于DAO、Service)  
        A. 部门                  
          DEPTNO DNAME LOC              
          10 ACCOUNTING NEW YORK              
          20 RESEARCH DALLAS              
          30 SALES CHICAGO              
          40 OPERATIONS BOSTON              
        B. 职员                  
          EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO    
          1000 KEVIN CLEANER 1001   6000 200 10    
          7369 SMITH CLERK 7902 1980/12/17 800.9   20    
          7499 ALLEN SALESMAN 7698 1981/2/20 1600 300 30    
          7521 WARD SALESMAN 7698 1981/2/22 1250 500 30    
          7566 JONES MANAGER 7839 1981/4/2 2975   20    
          7654 MARTIN SALESMAN 7698 1981/9/28 1250 1400 30    
          7698 BLAKE MANAGER 7839 1981/5/1 2850   30    
          7782 CLARK MANAGER 7839 1981/6/9 2450   10    
          7788 SCOTT ANALYST 7566 1987/4/19 3000   20    
          7839 KING PRESIDENT   1981/11/17 5000.123   10    
          7844 TURNER SALESMAN 7698 1981/9/8 1500 0 30    
          7876 ADAMS CLERK 7788 1987/5/23 1100   20    
          7900 JAMES CLERK 7698 1981/12/3 950   30    
          7902 FORD ANALYST 7566 1981/12/3 3000   20    
          7934 MILLER CLERK 7782 1982/1/23 1300   10    
        C. 工资等级标准                  
          GRADE LOSAL HISAL              
          1 700 1200              
          2 1201 1400              
          3 1401 2000              
          4 2001 3000              
          5 3001 9999              
                             
      现在要求写 LINQ 查询,实现如下效果:                
        LINQ 练习 1                  
          查询数据,得到如下形式的结果,并通过字符串形式输出给用户:          
          部门名 员工                
          ACCOUNTING XXX                
          ACCOUNTING YYY                
                         
          RESEARCH ZZZ                
          RESEARCH LLL                
                         
          SALES KKK                
          SALES PPP                
                         
          OPERATIONS OOO                
          OPERATIONS PPP                
                         
                             
        LINQ 练习 2                  
          查询数据,得到如下形式的结果,并通过字符串形式输出给用户:          
          (最好能通过一条LINQ查询就出这样的结果,当然通过多条LINQ查询实现也可以)        
         

 

(然后可以对比下用 for 循环实现,能简化多少代码)

 

 

               
          C#自学之旅 第三周-资料                  
                             
    编程练习2 —— WinForm练习                
          新建一个图形用户的项目,包含三个窗口:              
           - 登录画面                  
           - 用户信息一览画面                
           - 用户信息录入画面                
                             
          要求:                  
           - 启动自动打开登陆画面,用户名/密码错误 提示用户(用户名、密码用固定的,比如 root/admin)    
           - 登录成功进入用户信息一览画面(用户信息有哪些可参考编程练习题 1)          
           - 可以从一览画面跳转到用户信息录入画面,在该画面录入的信息可以反映到一览画面        
           - 尽量多的使用不同的 WinForm 控件 (下拉框、文本框、多选、单选。。。)        
           - 用户数据不需要持久化,直接使用内存中的集合集合(我们的主要目的是练习 WinForm)      
           - 进阶:用高级控价 DataGrid/DataTable 等来实现一览画面(你甚至可以上网去找开源的第三方库去实现!)  
                             

相关文章:

  • 2021-10-15
  • 2021-12-27
  • 2021-08-31
  • 2022-12-23
  • 2021-08-16
  • 2021-09-16
  • 2022-12-23
  • 2022-03-04
猜你喜欢
  • 2021-06-16
  • 2022-12-23
  • 2022-02-13
  • 2021-04-25
  • 2021-12-08
  • 2021-12-31
  • 2021-06-06
相关资源
相似解决方案