时间如何作为多条件筛选模糊查询


作者:蛋蛋;
撰写时间:2019/05/26
  1. 在知道时间的属性是DateTime之后我们往往都是在表查询之后再加上 ReceptionTime = tbReception.ReceptionTime.ToString();//接待时间 ToString();方法可把数组转换为字符串,并返回结果 注:在 Boolean 对象被用于字符串环境中时,此方法会被自动调用根据原始布尔值或者 booleanObject 对象的值返回字符串 “true” 或 “false”。 结果由变量的值决定Number 类型的 toString() 方法比较特殊,它有两种模式,即默认模式和基模式。采用默认模式,toString() 方法只是用相应的字符串输出数字值(无论是整数、浮点数还是科学计数法
var iNum1 = 10;
 var iNum2 = 10.0;
 alert(iNum1.toString()); //输出 “10”
 alert(iNum2.toString()); //输出 “10”
  1. 注释:在默认模式中,无论最初采用什么表示法声明数字,Number 类型的 toString() 方法返回的都是数字的十进制表示。因此,以八进制或十六进制字面量形式声明的数字输出的都是十进制形式的接待日期 根据上一个文章我们也已经知道分别在name=“”(与数据库字段名保持一致)和在列表时的命名需要改成后面申明新的命名; 我们知道如果多条件筛选的时候需要区分int类型 或者是string类型Int类型: 主要是主键ID当然同样是在name=”**ID”; 因为是表单提交所以需要表与表之间的传送, 这个时候name=” ”就作为一个传送条件 //获取查询条件 var ReceptionTime = $("#SReceptionID").val(); 这个时候有点不同,通常int类型,string类型都需要加一步判断 Int类型
:if (**ID = “” || **ID = undefined) { **ID = 0;}
 String类型: if (**Name == undefined) { **Name = “”;}
  1. 而时间在Html部分则不需要那么在控制器当中同样Lambda表达式就需要进一步做出详细判断了; //时间不为空
if (!string.IsNullOrEmpty(ReceptionTime))
 {
 try{
 DateTime dtreleaseTime = Convert.ToDateTime(ReceptionTime);
 DateTime endTime = Convert.ToDateTime(ReceptionTime).AddDays(1);
 listClient = listClient.Where(m => m.ReceptionTime >= dtreleaseTime && m.ReceptionTime < endTime).ToList();}
 catch (Exception e)
 {Console.WriteLine(e);}}

  1. 因为在查数据的时候我们就已经把他转换为string类型,但是相对于里面的判断条件来说不再是ID==ID,或者是string类型.Contains();选择器选取包含指定字符串的元素;经常与其他元素/选择器一起使用,来选择指定的组中包含指定文本的元素时间:是用于判断大小的;
    分三种情况
    1.选择某一个日期前面的;
    2.选择某一个日期后面的;
    3.等于当天时间的;
    在try()catch里面我做出的判断则是首先获取到当天的然后加上AddDays(1);
    则是选择到当天某一条数据一整天的数据也就是说从一天新的00:00开始到24:00结束这一整天的数据