Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WEB API如何将日期时间与附加时间跨度进行比较_C#_Linq_Datetime_Asp.net Web Api2_Datetime Comparison - Fatal编程技术网

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

C# WEB API如何将日期时间与附加时间跨度进行比较,c#,linq,datetime,asp.net-web-api2,datetime-comparison,C#,Linq,Datetime,Asp.net Web Api2,Datetime Comparison,我已经创建了一个webapi,其中我发送了一个序列号和一个日期时间。结果它给了我最后/最新的记录值 我所做的 下面是我的控制器代码 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

我已经创建了一个
webapi
,其中我发送了一个
序列号
和一个
日期时间
。结果它给了我最后/最新的记录值

我所做的

下面是我的控制器代码

 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
获取最后/最新记录的日期时间,即2017年10月21日下午6:15:08

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

我想做什么?

现在,我想比较
用户发送的
日期时间与
结果的
日期时间,这样,考虑到日期相同,结果的日期时间在用户发送的日期时间的
10分钟
时间范围内,即如果结果的日期时间在当前日期时间的10分钟时间范围内,则它将发送一个
YES
以其他方式响应
NO

我知道什么?

我知道如何添加或减少分钟,以及如何比较两个约会时间,还知道如何根据结果设置响应

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


任何帮助都将不胜感激

这里有一个简单的方法来检查以分钟为单位的时差

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";
DateTime userSent=新的日期时间(2017,10,22,13,20,20);
DateTime结果=新的日期时间(2017、10、22、18、15、08);
double diffInMinutes=Math.Abs((result-userSent.TotalMinutes);//可能是负面的

如果在
new DateTime(dt)
new DateTime(result)
中,我同时通过了
dt
result
,但它不允许我这样做。