如何仅使用查询参数检查日期是否等于datetime属性的日期



我有一个DateTime属性。

我想检查一个日期是否等于我的属性中的日期,并且必须完全在OData v4中可用的url查询参数中完成。

这不起作用:(

GET ~/odata/foo$filter=date(myProperty) eq date(1980-01-01)

是的,我可以使用greater then or equal,但它已经按预期工作了。问题出在equalnot equal上。

根据ABNF规则,日期值是一个格式为的值

dateValue=年"-"月"-"日

所以,我认为您不应该添加date前缀。那就是:

GET ~/oodata/foo$filter=日期(myProperty(eq 1980-01-01

以下是ODataTeam提供的一些测试用例:

https://github.com/OData/WebApi/blob/master/OData/test/E2ETest/WebStack.QA.Test.OData/DateAndTimeOfDay/DateAndTimeOfDayTest.cs#L169-L171

以及https://github.com/OData/WebApi/blob/master/OData/test/E2ETest/WebStack.QA.Test.OData/DateAndTimeOfDay/DateAndTimeOfDayTest.cs#L208-L212

此外,还有一个简单的教程可以参考:

http://odata.github.io/WebApi/#04-04支持的日期和时间

谢谢。希望能有所帮助。

相关内容

  • 没有找到相关文章

最新更新