标签搜索

C#可视化程序设计课堂笔记

Lan
Lan
2020-05-16 / 0 评论 / 1,386 阅读 / 正在检测是否收录...

<div class="stackedit__html"><h1>image.png</h1><h1>C#可视化程序设计笔记</h1><h2>一、初识类和对象</h2><ol class=" list-paddingleft-2"><li><p>类与对象:</p></li><ol class=" list-paddingleft-2" style="list-style-type: lower-alpha;"><li><p>某种可为人所感知的物质;</p></li><li><p>思维,感受或动作所作用的物质或精神体。</p></li><li><p>类:是对事物的一种抽象定义,将抽象之后的特征和行为有机结合便构成了类(个人理解就是种类吧,比如人就是一个种类,而将人具体描述出来,也就是实例化了一个人)。</p></li><li><p>对象:根据《韦氏大学英语词典》的释义:</p></li><li><p>两者关系:类是一系列对象的抽象,提取了这一系列对象的共同特征和共同行为。</p></li><li><p>总结:类是对对象的描述,是创建对象的“模板”,是对对象的抽象;对象表示现实世界中某个具体的事物,是类的一个实例,是类实例化的结果。</p></li></ol><li><p>C#类定义:</p></li><ol class=" list-paddingleft-2" style="list-style-type: lower-alpha;"><li><p>语法:</p></li></ol><pre class="brush:c#;toolbar:false">[访问修饰符] class 类名{
    类的字段声明;
    类的属性声明;
    类的方法声明;
}</pre><ol class=" list-paddingleft-2" style="list-style-type: lower-alpha;"><li><p>举例:</p></li></ol><pre class="brush:c#;toolbar:false">class Product{
    public string name;
    public string category;
    public double price;
    public int stock;
    public string descrition;
    // 定义字段与变量类似,需要指定类型与字段名,public是访问修饰符,控制类成员访问权限。public为公开的意思,表示在任何地方都能访问到。
    public void ShowInfo(){
        Console.WriteLine("产品信息");
        Console.WriteLine("=======================");
        Console.WriteLine("产品名称:{0}",name);
        Console.WriteLine("产品类别:{0}",category);
        Console.WriteLine("产品价格:{0}元",price);
        Console.WriteLine("产品描述:{0}",description);
    }
}</pre><li><p>对象的操作</p></li><p>a,实例化对象:</p><pre class="brush:c#;toolbar:false">类名 对象名 = new 类名();
Product phone = new Product();</pre><p>b,访问类的字段:</p><pre class="brush:c#;toolbar:false">Console.WriteLine(phone.name);
//在类的内部访问字段时,直接通过字段名访问。
//如果在外部首先定义字段时需要设置Public修饰符,然后实例化对象,通过对象名和“.”运算符才允许在类的外部访问。</pre><p>c,调用类的方法:</p><pre class="brush:c#;toolbar:false">phone.ShowInfo();
//实例化对象后,可通过对象名.方法名(参数)进行调用</pre><li><p>命名空间</p></li><ol class=" list-paddingleft-2" style="list-style-type: lower-alpha;"><li><p>导入命名空间</p></li></ol><pre class="brush:c#;toolbar:false">using Company.Development;
namespace T1Demo{
    class Program{
        static void Main(String[] args){
            Employee emp = new Employee();
        }
    }
}</pre><ol class=" list-paddingleft-2" style="list-style-type: lower-alpha;"><li><p>使用完全限定名访问</p></li></ol><pre class="brush:c#;toolbar:false">namespace T2Demo{
    class Program{
        static void Main(String[] args){
            Company.Development.Employee emp1 = new Company.Development.Employee();
        }
    }
}</pre><ol class=" list-paddingleft-2" style="list-style-type: lower-alpha;"><li><p>定义:相当于文件夹,但命名空间是一种逻辑组合,C#中,命名空间有两种形式:1,.NET框架定义好的系统命名空间,另一种是开发中自定义的命名空间。</p></li><li><p>自定义命名空间举例(命名空间也可以嵌套):</p></li></ol><pre class="brush:c#;toolbar:false">//某公司
namespace Company{
    Class Employee{
        
    }
    // 研发部
    namespace Development{
        //研发部员工类
        class Employee{
            
        }
    }
    // 人事部
    namespace Personel{
        //人事部员工类
        class Employee{
            
        }
    }
}</pre><ol class=" list-paddingleft-2" style="list-style-type: lower-alpha;"><li><p>常用的系统命名空间:</p><table><thead><tr class="firstRow"><th>命名空间</th><th>说明</th></tr></thead><tbody><tr><td>System</td><td>根命名空间,提供最基本的操作</td></tr><tr><td>System.Data</td><td>处理数据存取和管理</td></tr><tr><td>System.IO</td><td>管理对文件,流的同步和异步访问</td></tr><tr><td>System.Windows</td><td>可视化编程的基于窗体的处理</td></tr><tr><td>System.Collections</td><td>包含对集合进行处理的接口和类</td></tr></tbody></table></li><li><p>命名空间的使用:</p></li></ol></ol><h2>ADO.NET基础</h2><p>1,Connection链接</p><pre class="brush:c#;toolbar:false">using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
namespace T2practice2{
    class Program{
        static void Main(string[] args){
            //定义数据库链接字符串
            string connString = "server=.;database=GameBoxDB;uid=lanol;pwd=www.lanol.cn";
        }
    }
}</pre><p><br/></p></div><p>2,使用Command执行</p><pre class="brush:c#;toolbar:false">   class Program{
       static void Main(string[] args){
           //定义数据库链接字符串
               string connString = "server=.;database=GameBoxDB;uid=lanol;pwd=www.lanol.cn";
               // 创建链接对象
               SqlConnection conn = new SqlConnection(connString);
               //打开数据库链接
               conn.open();
               //检测数据库是否打开
               if (conn.State == ConnectionState.open){
                   Console.WriteLine("+---------------+");
                   Console.WriteLine("|1,新增|");
                   Console.WriteLine("|2,修改|");
                   Console.WriteLine("|3,删除|");
                   string index = Console.ReadLine();
                   string sql = "";
                   String loginid ="";
                   String loginpwd="";
                   switch (index){
                       case "1":
                           Console.WriteLine("请输入账号");
                           loginid = Console.ReadLine();
                           Console.WriteLine("请输入密码");
                           loginpwd = Console.ReadLine();
                           Console.WriteLine("请输入姓名");
                           String name = Console.ReadLine();
                           sql = string.Format("insert into Admins Values('{0}','{1}','{2}')"),loginid,loginpwd,name);
                           break;
                       case "2":
                           Console.WriteLine("请输入账号");
                           loginid = Console.ReadLine();
                           Console.WriteLine("请输入密码");
                           loginpwd = Console.ReadLine();
                           Console.WriteLine("请输入新密码");
                           String newpwd = Console.ReadLine();
                           sql = string.Format("update admins set loginpwd = '{0}' where loginid='{1}' and loginpwd='{2}'"),newpwd,loginid,loginpwd);
                           break;
                       case "3":
                           Console.WriteLine("请输入账号");
                           loginid = Console.ReadLine();
                           Console.WriteLine("请输入密码");
                           loginpwd = Console.ReadLine();
                           Console.WriteLine("请输入姓名");
                           String name = Console.ReadLine();
                           sql = string.Format("delete from Admins where loginid='{0}' and loginpwd='{1}'"),loginid,loginpwd,name);
                           break;
                   }
                   SqlCommand cursor = new SqlCommand(sql,conn);
                   if (cursor.ExecuteNonQuery()>0){
                       Console.WriteLine("成功");
                   }else{
                       Console.WriteLine("错误")
                   }
               }
           conn.Close();
       }
   }</pre><p>3,使用DataReader读取</p><pre class="brush:c#;toolbar:false">class Program{
       static void Main(string[] args){
           //定义数据库链接字符串
            string connString = "server=.;database=GameBoxDB;uid=lanol;pwd=www.lanol.cn";
            // 创建链接对象
            SqlConnection conn = new SqlConnection(connString);
         //打开数据库链接
            conn.open();
         //检测数据库是否打开
            if (conn.State == ConnectionState.open){
                string sql = "select id,loginid,name from Admins";
                //创建Command对象
                SqlDataReader reader = cmd.ExecuteReader();
                Console.ReadLine("编号 账号 密码 姓名");
                while(reader.Read()){
                    string id = reader["ID"].ToString();
                    string loginid = reader["loginid"].ToString();
                    string loginpwd = reader["loginpwd"].ToString();
                    string name = reader["name"].ToString();
                    Console.WriteLine("{0} {1} {2} {3}",id,loginid,loginpwd,name);
                }
                reader.Close();
            }
       }</pre><p>MarkDown:C#可视化笔记</p>

# C#可视化程序设计笔记 ## 一、初识类和对象 1. 类与对象: 1. 类:是对事物的一种抽象定义,将抽象之后的特征和行为有机结合便构成了类(个人理解就是种类吧,比如人就是一个种类,而将人具体描述出来,也就是实例化了一个人)。 1. 对象:根据《韦氏大学英语词典》的释义: 1. 某种可为人所感知的物质; 1. 思维,感受或动作所作用的物质或精神体。 3. 两者关系:类是一系列对象的抽象,提取了这一系列对象的共同特征和共同行为。 3. 总结:类是对对象的描述,是创建对象的“模板”,是对对象的抽象;对象表示现实世界中某个具体的事物,是类的一个实例,是类实例化的结果。 2. C#类定义:
[访问修饰符] class 类名{
    类的字段声明;
    类的属性声明;
    类的方法声明;
}
  1. 举例:
class Product{
    public string name;
    public string category;
    public double price;
    public int stock;
    public string descrition;
    // 定义字段与变量类似,需要指定类型与字段名,public是访问修饰符,控制类成员访问权限。public为公开的意思,表示在任何地方都能访问到。
    public void ShowInfo(){
        Console.WriteLine("产品信息");
        Console.WriteLine("=======================");
        Console.WriteLine("产品名称:{0}",name);
        Console.WriteLine("产品类别:{0}",category);
        Console.WriteLine("产品价格:{0}元",price);
        Console.WriteLine("产品描述:{0}",description);
    }
}
  1. 对象的操作

    1. 实例化对象:
类名 对象名 = new 类名();
Product phone = new Product();
  1. 访问类的字段:
Console.WriteLine(phone.name);
//在类的内部访问字段时,直接通过字段名访问。
//如果在外部首先定义字段时需要设置Public修饰符,然后实例化对象,通过对象名和“.”运算符才允许在类的外部访问。
  1. 调用类的方法:
phone.ShowInfo();
//实例化对象后,可通过对象名.方法名(参数)进行调用
  1. 命名空间

    1. 定义:相当于文件夹,但命名空间是一种逻辑组合,C#中,命名空间有两种形式:1,.NET框架定义好的系统命名空间,另一种是开发中自定义的命名空间。
    2. 自定义命名空间举例(命名空间也可以嵌套):
//某公司
namespace Company{
    Class Employee{
        
    }
    // 研发部
    namespace Development{
        //研发部员工类
        class Employee{
            
        }
    }
    // 人事部
    namespace Personel{
        //人事部员工类
        class Employee{
            
        }
    }
}
  1. 常用的系统命名空间:
    | 命名空间 | 说明 |
System根命名空间,提供最基本的操作
System.Data处理数据存取和管理
System.IO管理对文件,流的同步和异步访问
System.Windows可视化编程的基于窗体的处理
System.Collections包含对集合进行处理的接口和类
  1. 命名空间的使用:

    1. 导入命名空间
using Company.Development;
namespace T1Demo{
    class Program{
        static void Main(String[] args){
            Employee emp = new Employee();
        }
    }
}
  1. 使用完全限定名访问
namespace T2Demo{
    class Program{
        static void Main(String[] args){
            Company.Development.Employee emp1 = new Company.Development.Employee();
        }
    }
}

二、ADO.NET基础

  1. Connection链接
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
namespace T2practice2{
    class Program{
        static void Main(string[] args){
            //定义数据库链接字符串
            string connString = "server=.;database=GameBoxDB;uid=lanol;pwd=www.lanol.cn";
            // 创建链接对象
            SqlConnection conn = new SqlConnection(connString);
            //打开数据库链接
            conn.open();
            //检测数据库是否打开
            if (conn.State == ConnectionState.open){
                Console.WriteLine("Ok")
            }
            //关闭数据库链接
            conn.close();
            if(conn.State == ConnectionState.Close){
                Console.WriteLine("ok")
            }
        }
    }
}
  1. 使用Command执行
class Program
    {
        static void Main(string[] args)
        {
            //定义数据库链接字符串
            string connString = "server=.;database=GameBoxDB;uid=lanol;pwd=www.lanol.cn";
            // 创建链接对象
            SqlConnection conn = new SqlConnection(connString);
            //打开数据库链接
            conn.open();
            //检测数据库是否打开
            if (conn.State == ConnectionState.open)
            {
                Console.WriteLine("+---------------+");
                Console.WriteLine("|1,新增|");
                Console.WriteLine("|2,修改|");
                Console.WriteLine("|3,删除|");
                string index = Console.ReadLine();
                string sql = "";
                String loginid = "";
                String loginpwd = "";
                switch (index)
                {
                    case "1":
                        Console.WriteLine("请输入账号");
                        loginid = Console.ReadLine();
                        Console.WriteLine("请输入密码");
                        loginpwd = Console.ReadLine();
                        Console.WriteLine("请输入姓名");
                        String name = Console.ReadLine();
                        sql = string.Format("insert into Admins Values('{0}','{1}','{2}')"),loginid,loginpwd,name);
                        break;
                    case "2":
                        Console.WriteLine("请输入账号");
                        loginid = Console.ReadLine();
                        Console.WriteLine("请输入密码");
                        loginpwd = Console.ReadLine();
                        Console.WriteLine("请输入新密码");
                        String newpwd = Console.ReadLine();
                        sql = string.Format("update admins set loginpwd = '{0}' where loginid='{1}' and loginpwd='{2}'"),newpwd,loginid,loginpwd);
                        break;
                    case "3":
                        Console.WriteLine("请输入账号");
                        loginid = Console.ReadLine();
                        Console.WriteLine("请输入密码");
                        loginpwd = Console.ReadLine();
                        Console.WriteLine("请输入姓名");
                        String name = Console.ReadLine();
                        sql = string.Format("delete from Admins where loginid='{0}' and loginpwd='{1}'"),loginid,loginpwd,name);
                        break;
                }
                SqlCommand cursor = new SqlCommand(sql, conn);
                if (cmd.ExecuteNonQuery() > 0)
                {
                    Console.WriteLine("成功");
                }
                else
                {
                    Console.WriteLine("错误")
                   }
            }
            conn.Close();
        }
    }

3. 使用DataReader读取

class Program{

static void Main(string[] args){
    //定义数据库链接字符串
     string connString = "server=.;database=GameBoxDB;uid=lanol;pwd=www.lanol.cn";
     // 创建链接对象
     SqlConnection conn = new SqlConnection(connString);
  //打开数据库链接
     conn.open();
  //检测数据库是否打开
     if (conn.State == ConnectionState.open){
         string sql = "select id,loginid,name from Admins";
         //创建Command对象
         SqlDataReader reader = cmd.ExecuteReader();
         Console.ReadLine("编号\t账号\t密码\t姓名");
         while(reader.Read()){
             string id = reader["ID"].ToString();
             string loginid = reader["loginid"].ToString();
             string loginpwd = reader["loginpwd"].ToString();
             string name = reader["name"].ToString();
             Console.WriteLine("{0}\t{1}\t{2}\t{3}",id,loginid,loginpwd,name);
         }
         reader.Close();
     }
}

}

0

评论 (0)

取消