我尝试使用OData使数据精湛。当我使用下面的链接时,它可以正常工作: 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)Internal Server Error。 (调用的目标已引发异常。) 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” /
谢谢
答案 0 :(得分:0)
这似乎是服务器内部错误。
当我尝试使用不同的实体但条件相同时,它运行良好。我将正确的解决方案放在下面:
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