我设了个updateDate这个世界是在dt0 和dt1之间的时间 但是他不走这个if 什么原因 c#判断一个时间是否在两个时间之间不是这样判断的吗
dt0 是当前时间 , dt1是当前时间-1小时的时间
if (updateDate < dt0 && updateDate >dt1)
{
Response.Write("ok");
}
dt0 是当前时间 , dt1是当前时间-1小时的时间
if (updateDate < dt0 && updateDate >dt1)
{
Response.Write("ok");
}
http://msdn.microsoft.com/zh-cn/library/system.datetime.compare(VS.80).aspx
/// 判断两个日期之间的相差数
/// </summary>
/// <param name="howtocompare">要比较的类型,可选参数:year,month,day,hour,minute,second</param>
/// <param name="startDate">开始日期</param>
/// <param name="endDate">结束日期</param>
/// <returns>返回double型数</returns>
public static double DateDiff(string howtocompare, System.DateTime startDate, System.DateTime endDate)
{
double diff = 0;
System.TimeSpan TS = new System.TimeSpan(endDate.Ticks - startDate.Ticks); switch (howtocompare.ToLower())
{
case "year":
diff = Convert.ToDouble(TS.TotalDays / 365);
break;
case "month":
diff = Convert.ToDouble((TS.TotalDays / 365) * 12);
break;
case "day":
diff = Convert.ToDouble(TS.TotalDays);
break;
case "hour":
diff = Convert.ToDouble(TS.TotalHours);
break;
case "minute":
diff = Convert.ToDouble(TS.TotalMinutes);
break;
case "second":
diff = Convert.ToDouble(TS.TotalSeconds);
break;
}
return diff;
}
DateTime dt1ater = new DateTime(2011, 1, 1);
DateTime dt = DateTime.Now; if (dt >= dt0 && dt <= dt1ater) {
MessageBox.Show("OK");
}你的作法是正确的,找其它原因吧。 用这个demo验证下。