2017-01-27 108 views
-4

大家好我正在做这个项目,我目前卡住了。 我有3个字段都是日期和时间字段,第三个是状态字段。c#日期和时间检查

我想检查当前日期和时间是否=目标日期和目标时间,则返回true否则返回false。这是我当前版本的代码。

*//DateComp is just a date field that checks if date is completed* 
if (DateComp != null) 
{ 
return "Complete|#8FBC8F"; 
}    

    *//TargetDate is the target date field I want to check* 

else if (IsDate(TargetDate)&&(TargetDate < today.Date)) 
       return "Overdue|#BC8F8F"; 

else if (IsDate(TargetDate)&&(TargetDate >= today.Date)) 
       return "Pending|#EEE8AA"; 
else return "Pending|#EEE8AA"; 

任何人都可以帮我一把。不知道我怎样才能检查时间,以及它是否返回true。

+5

请提供[mcve] - 很难理解您想要在这里实现的目标,只是张贴片段使其更难以理解。 –

+0

对不起,基本上,我想从当前日期/时间检查目标日期和目标时间。但我不知道该怎么做。 –

+0

你为什么要返回每种类型的散列?我认为它们是颜色,但它们是如何使用的?你是否将答复分解以查找状态和颜色?如果是这样,你应该返回一个元组并保存分割,或者实现枚举而不是映射到颜色的字符串。 – Ben

回答

0

我不确定,但我猜你已经提到你想要获得目标时间,那么你可以使用TargetDate.TimeOfDay。但是,如果您想检查它们是否相同,则可以使用(==)运算符。

1

您可以使用等号运算符(==)检查DateTime对象是否相等。

如果你想知道他们如何他们不同,你可以使用DateTime.CompareTo()

+0

因此而不是使用TargetDate