C#_实现月度信息的快捷查询

来源:互联网 发布:国产cad软件哪款好用 编辑:程序博客网 时间:2024/05/30 05:41

日期字段的查询,一般需要输入开始日期和结束日期,有的时候,客户嫌麻烦,想输入2017-07这样的快捷输入来实现月度查询。

这样的问题,需要程序自动补全开始日期和结束日期的范围,才能有效的获取需要的数据。

开始日期:比较容易获得,条件+01字符串就可以了;

结束日期:需要将开始日期转换成datatime,然后计算本月的天数,c#有现成的函数,直接用,太幸福了,然后拼出结束日期,ok。

看代码,仅供参考:

                       case "System.DateTime":                            // 按月查询                            string ls_s, ls_e;                            DateTime ldt_1;                            int days = 28;                                                       // as_cxvalue 是输入的查询条件                           if (as_cxvalue.Length == 7 )                            {                                // 开始时间                                ls_s = as_cxvalue + "-01 00:00";                                   try                                {                                    // 开始时间 转成datetime                                    ldt_1 = System.Convert.ToDateTime(ls_s);                                    // 获取当前月度的天数                                    days = DateTime.DaysInMonth(ldt_1.Year, ldt_1.Month);                                    // 返回用户的查询条件                                    ls_2 = "[" + as_cxname.ToString() + "字段月度查询:" + as_cxvalue.ToString() + "]";                                }                                catch                                {                                    // 返回条件不正确                                    ls_2 = "[" + as_cxname.ToString() + "条件不合法:" + as_cxvalue.ToString() + "]";                                }                                // 拼出结束日期                                ls_e = as_cxvalue +"-"+days + " 23:59";                                 // 返回查询的where字符串                                                               ls_1 = as_cxid.ToString() + " >= '" + ls_s + "' and " + as_cxid.ToString() + " < '" + ls_e + "'";                            }


还不是很完善,基本能用。

原创粉丝点击