因为是使用C#创建的上位机软件,所以读取测试时间也是转换为C#的时间对象,需求是对测试时间对象比较,判断时间点的先后,比如经历了3个测试,必须按照T1,T2,T3, 查询到这3个测试状态,还需要判断这个3个测试时间是否有先后的顺序。
测试代码如下:
class Program
{
static void Main(string[] args)
{
DateTime dt1 = default(DateTime);
DateTime dt2 = DateTime.MinValue;
Console.WriteLine($"{dt1.ToString()}");
Console.WriteLine($"{dt2.ToString()}");
//这样dt1,dt2 的值都是 {0001/1/1 0:00:00}
//比较是否相等使用Equals方法
DateTime d1 = System.DateTime.Now;
Console.WriteLine($"{d1.ToString()}");
Thread.Sleep(1000);
DateTime d2 = System.DateTime.Now;
Console.WriteLine($"{d2.ToString()}");
//第一种方法
Console.WriteLine("d1.Equals(d2)={0}", d1.Equals(d2));
//第二种方法
Console.WriteLine("DateTime.Equals(d1, d2)={0}", DateTime.Equals(d1, d2));
//比较时间先后顺序
d1 = DateTime.Now.AddDays(-1);
d2 = DateTime.Now.AddDays(1);
if (d1 < d2)
{
Console.WriteLine($"{d1} <{d2} ==True");
}
else
{
Console.WriteLine($"{d1} >{d2} == True ");
}
}
输出:
0001/1/1 0:00:00
0001/1/1 0:00:00
2022/3/26 19:26:58
2022/3/26 19:26:59
d1.Equals(d2)=False
DateTime.Equals(d1, d2)=False
2022/3/25 19:26:59 <2022/3/27 19:26:59 ==True
请按任意键继续. . .
时间先后顺序直接使用关系运算符即可。