WEB API 如何将日期时间与附加时间跨度进行比较

WEB API how to compare date time with additional time span

我创建了一个 WEB API,我在其中发送了一个 serial number 和一个 date time。结果它给了我 last/latest 记录值。

我做了什么

下面是我的控制器代码

 var dateTime = dt.ToString(); // dt is the user sent date time
 var result = medEntitites.tj_xhqd.Where(m => m.zdjh == msn) // msn is the serial number 
                                             .OrderByDescending(o => o.sjsj)
                                             .Select(s => s.sjsj)//sjsj is datetime in DB
                                             .First().ToString();  

我正在通过 Postman 测试 API。我发送的日期时间格式为 T,如 2017-10-22T13:30:20,在控制器中日期时间为 10/22/2017 1:30:20 PM

作为响应 result 获取 last/latest 记录的日期时间 10/21/2017 6:15:08 PM

API URL: http://localhost:14909/api/meters/GetByMsn/002999000536/2017-10-22T13:30:20

我想做什么?

现在我想比较 user sent 日期时间和 resulted 日期时间,结果日期时间在用户发送日期时间的 10 minutes 时间跨度内考虑到日期相同,即如果结果日期时间在当前日期时间的 10 分钟时间跨度内,那么它将发送 YES 响应,否则 NO

我知道什么?

我知道如何 add or subtract minutes 以及如何比较两个日期时间,我也知道如何根据结果设置响应。

我面临的问题是检查时间跨度

如有任何帮助,我们将不胜感激。

这是一种以分钟为单位检查时差的简单方法。

DateTime userSent = new DateTime(2017, 10, 22, 13, 20, 20);
DateTime result = new DateTime(2017, 10, 22, 18, 15, 08);

double diffInMinutes = Math.Abs((result - userSent).TotalMinutes); // can be negative

if(diffInMinutes <= 10)
    return "Yes";
else
    return "No";