OData 字符串错误和日期格式问题

OData string error and problem with date formats

我尝试使用 OData 将数据获取到 excel。当我在下面使用 link 时,它工作正常: http://xts/odata/AuditAggregationOdata 要么 http://xts/odata/AuditAggregationOdata/?$filter=(ObjectId%20eq%2041143%20)

但是当我尝试使用某些日期范围或日期函数时,它不起作用。我尝试写下所有内容,但没有正确的结果:

1。 http://xts/odata/AuditAggregationOdata/?$filter=year(FirstRead)%20eq%202016

错误信息: 无法连接 我们在尝试连接时遇到错误 详细信息:“Microsoft.Mashup.Engine1.Library.Resources.HttpResource:请求失败: OData 版本:3 和 4,错误:远程服务器返回错误:(500) 内部服务器错误。 (异常已被调用的目标抛出。) OData 版本:4,错误:远程服务器返回错误:(500) 内部服务器错误。 (内部服务器错误) OData 版本:3,错误:远程服务器返回错误:(500) 内部服务器错误。 (调用的目标抛出了异常。)"

或者这个

2。 http://xts/odata/AuditAggregationOdata/?$filter=(FirstRead%20gt%20datetime%272019-01-01T00:00:00Z%27%20and%20FirstRead%20lt%20datetime%272019-01-03T00:00:00Z%27)

错误信息: 详细信息:“Microsoft.Mashup.Engine1.Library.Resources.HttpResource:请求失败: OData 版本:3 和 4,错误:远程服务器返回错误:(400) 错误请求。 (URI 中指定的查询无效。检测到具有不兼容类型的二元运算符。找到运算符种类 'GreaterThan' 的操作数类型 'Edm.DateTimeOffset' 和 'Edm.DateTime'。) OData 版本:4,错误:远程服务器返回错误:(500) 内部服务器错误。 (内部服务器错误) OData 版本:3,错误:远程服务器返回错误:(400) 错误请求。 (URI 中指定的查询无效。检测到具有不兼容类型的二元运算符。找到运算符种类 'GreaterThan' 的操作数类型 'Edm.DateTimeOffset' 和 'Edm.DateTime'。)“

注意: 属性 名称="FirstRead" 类型="Edm.DateTimeOffset"/

谢谢

这似乎是内部服务器错误。

当我尝试不同的实体但条件相同时,它运行良好。我把正确的解决方案放在下面:

http://xts/odata/ProfileData(path='Odata_test%7Codata_test')?$filter=year(From)%20eq%202019

http://xts/odata/ProfileData(path='Odata_test%7Codata_test')?$filter=From%20ge%20datetimeoffset%272016-01-01%27%20and%20From%20lt%20datetimeoffset%272020-01-01%27