zoukankan      html  css  js  c++  java
  • ado数据模型和数据访问类,泛型集合

    
    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using 实体类_数据访问类_泛型集合.moxing;//引用命名空间
    using 实体类_数据访问类_泛型集合.shujucaozuo;
    
    namespace 实体类_数据访问类_泛型集合
    {
        class Program
        {
            static void Main(string[] args)
            {
                List<car> data = new cardata().selectall();//创建一个list的泛型集合 car表的。名称叫data, 
                //接受泛型集合,并打印所有
    
                foreach (car c in data)
                {
                    Console.WriteLine(c.Ids+" "+c.Name+" "+c.brandname+" "+c.strtime);//输出向输出的;
                }
    
                Console.Write("请输入汽车名称");
                string uname = Console.ReadLine();
                data = new cardata().select(uname);
    
                Console.Clear();//清空
                foreach (car c in data)
                {
                    Console.WriteLine(c.Ids + " " + c.Name + " " + c.Powers+" "+c.strtime);
                }
    
                Console.ReadLine();
            }
        }
    }
    
    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.SqlClient;
    
    namespace 实体类_数据访问类_泛型集合.moxing
    {
        public class car//先设置访问类 公共类
        {
            SqlConnection conn = null;
            SqlCommand cmd = null;
            public car()
            {
                conn = new SqlConnection("server=.;database=zuoye;user=sa;pwd=123;");
                cmd = conn.CreateCommand(); 
            }
    
    
            //封装
            private int _ids;
            /// <summary>
            /// ID
            /// </summary>
            public int Ids
            {
                get { return _ids; }
                set { _ids = value; }
            }
    
            private string _code;
            /// <summary>
            /// 汽车编号
            /// </summary>
            public string Code
            {
                get { return _code; }
                set { _code = value; }
            }
    
            private string _name;
            /// <summary>
            /// 汽车名称
            /// </summary>
            public string Name
            {
                get { return _name; }
                set { _name = value; }
            }
    
            private string _brand;
            /// <summary>
            /// 汽车系别
            /// </summary>
            public string Brand
            {
                get { return _brand; }
                set { _brand = value; }
            }
            public string brandname
            {
                get 
                {
                string bn = "";
                cmd.CommandText = "select *from brand where brand_code= @b";
                cmd.Parameters.Clear();
                cmd.Parameters.Add("@b",_brand);
                conn.Open();
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    dr.Read();
                    bn = dr["brand_name"].ToString();
                }
                conn.Close();
                return bn;
                }
            }
    
            private DateTime _time;
            /// <summary>
            /// 上市时间
            /// </summary>
            public DateTime Time
            {
                get { return _time; }
                set { _time = value; }
            }
            public string strtime
            {
                get { return _time.ToString("yyyy年mm月dd日"); }
            }
    
    
            private decimal _oil;
            /// <summary>
            /// 油耗
            /// </summary>
            public decimal Oil
            {
                get { return _oil; }
                set { _oil = value; }
            }
    
            private int _powers;
            /// <summary>
            /// 马力
            /// </summary>
            public int Powers
            {
                get { return _powers; }
                set { _powers = value; }
            }
    
            private int _exhaust;
            /// <summary>
            /// 排量
            /// </summary>
            public int Exhaust
            {
                get { return _exhaust; }
                set { _exhaust = value; }
            }
    
            private decimal _price;
            /// <summary>
            /// 价格
            /// </summary>
            public decimal Price
            {
                get { return _price; }
                set { _price = value; }
            }
    
            private string _pic;
            /// <summary>
            /// 对应图片
            /// </summary>
            public string Pic
            {
                get { return _pic; }
                set { _pic = value; }
            }
        }
    }
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using 实体类_数据访问类_泛型集合.moxing;
    using System.Data.SqlClient;
    
    namespace 实体类_数据访问类_泛型集合.shujucaozuo
    {
        public class cardata
        {
            //创建了 conn,cmd 两个对象,没有实例化,没有进行赋值,等于null,就是说没有在内存里开辟空间,不能用。
            SqlConnection conn = null;
            SqlCommand cmd = null;
            //没有返还值,和这个类名是一样的
            public cardata()
            {
                //创建类的对象才把conn,cmd,两个给实例化出,写在外边,其他的可以直接调用。
                conn = new SqlConnection("server=.;database=zuoye;user=sa;pwd=123;");
                cmd = conn.CreateCommand();  
            }
            /// <summary>
            /// 查询所有的信息
            /// </summary>
            /// <returns></returns>
            public List<car> selectall()//泛型集合 尖括号里面放的是car这个类 那么 这个尖括号里面只能放这个类,不可以放其他的类
            {
              List<car> list =new List<car>();//创建list的集合。创建放值骑车边的全部信息的泛型集合
    
                cmd.CommandText = "select * from car ";//查询所有信息,编写tsql语句
                conn.Open();
                //读取执行操作
                SqlDataReader dr = cmd.ExecuteReader();//reader 执行操作  cmd的执行操作与sql里边的操作同步起来,dr定义的变量
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        car c = new car();//创建汽车模型对象,并将对象的内容填全
                        c.Ids = Convert.ToInt32(dr["ids"]);
                        c.Code=dr["code"].ToString();
                        c.Name = dr["name"].ToString();
                        c.Brand = dr["brand"].ToString();
                        c.Time = Convert.ToDateTime(dr["time"]);
                        c.Oil = Convert.ToDecimal(dr["oil"]);
                        c.Powers = Convert.ToInt32(dr["powers"]);
                        c.Exhaust = Convert.ToInt32(dr["exhaust"]);
                        c.Price = Convert.ToDecimal(dr["price"]);
                        c.Pic = dr["pic"].ToString();
                        list.Add(c);//将填好的汽车模型对象放置进泛型集合中
                    }
                }
    
    
                conn.Close();
              return list;//返回list 这个值
            }
    
            /// <summary>
            /// 模糊查询骑车表数据
            /// </summary>
            /// <param name="name">需要变量汽车名称</param>
            /// <returns></returns>
            public List<car> select(string name)
            {
                List<car> list = new List<car>();
    
                cmd.CommandText = "select * from car where name like @name";
                cmd.Parameters.Clear();//parameters,防攻击!!!    清空所有数据
                cmd.Parameters.Add("@name","%"+name+"%");//添加通配符
                conn.Open();
                //读取执行操作
                SqlDataReader dr = cmd.ExecuteReader();//reader 执行操作  cmd的执行操作与sql里边的操作同步起来,dr定义的变量
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        car c = new car();//创建汽车模型对象,并将对象的内容填全
                        c.Ids = Convert.ToInt32(dr["ids"]);
                        c.Code = dr["code"].ToString();
                        c.Name = dr["name"].ToString();
                        c.Brand = dr["brand"].ToString();
                        c.Time = Convert.ToDateTime(dr["time"]);
                        c.Oil = Convert.ToDecimal(dr["oil"]);
                        c.Powers = Convert.ToInt32(dr["powers"]);
                        c.Exhaust = Convert.ToInt32(dr["exhaust"]);
                        c.Price = Convert.ToDecimal(dr["price"]);
                        c.Pic = dr["pic"].ToString();
                        list.Add(c);//将填好的汽车模型对象放置进泛型集合中
                    }
                }
    
    
                conn.Close();
                return list;
            }
        }
    }
     

    数据模型和数据访问类:
    数据模型:
    使用面向对象中的封装特性,将数据表中的行数据组成一个同样结构的对象,来单独使用;

    数据访问类:
    将某一个表的全部增删改查操作的方法写进去,方便统一管理和调用;

    数据模型和数据访问类单独创建两个文件件单独放置,方便查看;
    注意:单独创建的问题件命名空间会自动更改,调用时需要引用命名空间,并且在创建类时第一步
    要把类的访问权限设置为公开的

    泛型集合:
    List<T> T代表泛型,你给它什么类型,它就代表什么类型
    定义:
    List<string> li = new List<string>();
    实例化什么类型的泛型集合,那么这个集合中就只能放这一种类型的变量或对象
    添加数据:
    li.Add(数据/变量/对象);
    查询:
    foreach遍历

  • 相关阅读:
    .net实现浏览器大文件分片上传
    asp.net实现浏览器大文件分片上传
    php实现浏览器大文件分片上传
    Java实现浏览器大文件分片上传
    文件分片上传
    大文件分片上传
    pdf缩略图生成上传解决方案
    专业精神的三个步骤
    安卓TabHost+ViewPager+RadioGroup多功能模板整理
    java基础之概谈xml文件解析
  • 原文地址:https://www.cnblogs.com/zhangdemin/p/5620333.html
Copyright © 2011-2022 走看看