DateTime t1 = DateTime.Now.Date; //2020/8/4 0:00:00
DateTime t2 = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"));//得到2020/8/4 16:24:54
DateTime t3 = Convert.ToDateTime(t1.AddHours(16).AddMinutes(24).AddSeconds(t2.Second).AddMilliseconds(t2.Millisecond));//2020/8/4 16:24:54
if (DateTime.Compare(t2, t3) == 0)
{
}
DateTime.Now得到的结果,虽然调式看到只有年月日时分秒,其实不然,DateTime.Now包括毫秒值的,然后直接把俩个datetime 类型的时间拿来对比的话,后面你会发现它们不会进入判断,因为毫秒不同,这里的话,需要把毫秒也加上。
DateTime.Compare:
当调用compare方法比较两个时间大小时,传入的两个时间参数除了必属同一时区之外,还必须属于同一个精度范围。对两个 DateTime 的实例进行比较,并返回一个指示第一个实例是早于、等于还是晚于第二个实例的整数。