DateTime与IF语句的比较不起作用

时间:2017-11-02 08:39:58

标签: c# xamarin.android

我试图对DateTime中的xamarin进行比较,但它无法正常工作,下面是我的代码:

  

当系统日期等于用户设置的时间时,它会Toast a   消息

    DateTime dt = DateTime.Now.ToLocalTime();
    string timeset = "11:37".Trim();
    DateTime oDate = DateTime.ParseExact(timeset, "HH:mm", null);
    System.Diagnostics.Debug.WriteLine(" System Time :  " + dt + " Set Time : " + oDate);
    if (dt==oDate)
    {
        StartService();
    }

1 个答案:

答案 0 :(得分:1)

可能更有用的是使用两次之间的差异:

var diffInSeconds = (dt - oDate).TotalSeconds;

所以:

DateTime dt = DateTime.Now.ToLocalTime();
string timeset = "08:56".Trim();
DateTime oDate = DateTime.ParseExact(timeset, "HH:mm", null);
System.Diagnostics.Debug.WriteLine(" System Time :  " + dt + " Set Time : " + oDate);
var diffInSeconds = (dt - oDate).TotalSeconds;
System.Diagnostics.Debug.WriteLine(diffInSeconds);
if (Math.Abs(diffInSeconds) < 60)
{
    System.Diagnostics.Debug.WriteLine("Equal");
}

这给出了与最近分钟的差异。

通过Google发现了很多例子。