• DataTable.SELECT日期类型筛选处理


    初始化:

     public DataTable1()
            {
                InitializeComponent();
                Init();
            }
    
            private void Init()
            {
                dt = new DataTable("cart");
                DataColumn dc1 = new DataColumn("prizename", Type.GetType("System.String"));
                DataColumn dc2 = new DataColumn("point", Type.GetType("System.Int16"));
                DataColumn dc3 = new DataColumn("number", Type.GetType("System.Int16"));
                DataColumn dc4 = new DataColumn("totalpoint", Type.GetType("System.Int64"));
                DataColumn dc5 = new DataColumn("prizeid", Type.GetType("System.String"));
                DataColumn dc6 = new DataColumn("Timer", Type.GetType("System.DateTime"));
                dt.Columns.Add(dc1);
                dt.Columns.Add(dc2);
                dt.Columns.Add(dc3);
                dt.Columns.Add(dc4);
                dt.Columns.Add(dc5);
                dt.Columns.Add(dc6);
                //以上代码完成了DataTable的构架,但是里面是没有任何数据的
                //Random r = new Random();
                for (int i = 0; i < 10; i++)
                {
                    //int a = r.Next(1, 100);
                    DataRow dr = dt.NewRow();
                    dr["prizename"] = "娃娃"+i;
                    dr["point"] = 10;
                    dr["number"] = i;
                    dr["totalpoint"] = 10;
                    dr["prizeid"] = "001";
                    dr["Timer"] = DateTime.Now.AddDays(i);
                    dt.Rows.Add(dr); 
                }
                dataGridView1.DataSource = dt;
            }
    

    查询:

    private void select_Click(object sender, EventArgs e)
            {
                DateTime  dtend = dateTimePicker1.Value;
                DateTime dtstart = dateTimePicker2.Value;  
                var dd = dt.AsEnumerable(); 
                //方法1
                //var dtr = (from stu in dd
                //           where stu.Field<System.DateTime>("Timer") >= dtstart
                //           where stu.Field<System.DateTime>("Timer") <= dtend
                //           select stu);
                //var res1 = dd.Where(x => x.Field<int>("number") > 2 && x.Field<int>("number") < 5);
                //方法2
                var dtr = dd.Where(x => x.Field<DateTime>("Timer") >= dtstart && x.Field<DateTime>("Timer") <= dtend);
                //方法三
                //DataTable dt1 = new DataTable();
                //for (int i = 0; i < dt.Rows.Count; i++)
                //{
                //    DateTime di = (DateTime)dt.Rows[i]["Timer"];
                //    bool a = di > dtstart;
                //    bool b = di < dtend;
                //    if ((DateTime)dt.Rows[i]["Timer"] > dtstart && (DateTime)dt.Rows[i]["Timer"] < dtend)
                //    {
                //        dt1.Rows.Add(dt.Rows[i]);
                //    }
                //}
                DataTable newdt = dtr.CopyToDataTable<DataRow>();
                dataGridView1.DataSource = newdt;
    
            }
    

      初始化:

    Init()

      

  • 相关阅读:
    uboot向内核模块传递参数的方法
    arm下用shell控制gpio
    u-boot的内存分布和全局数据结构
    Ambarella SDK build 步骤解析
    MMU段式映射(VA -> PA)过程分析
    ambarella H2 添加文件到ext4文件系统
    使用U-Boot的TFTP(远程/网络内核)
    使用U-Boot的NFS(远程/网络用户空间)
    君正Ingenic X1000E_halley2 更改Logo
    【自动化测试】robotframework中一些建议可能需要掌握的关键字
  • 原文地址:https://www.cnblogs.com/Zingu/p/13408452.html
Copyright © 2020-2023  润新知