问题描述
也许我遗漏了一些东西,但我不断收到对象反序列化的异常。我认为这是因为 @odata.context
与 @odata.type
例如,如果我执行 GET ~/MediaFiles
这是响应:
{
"@odata.context": "https://MyServer/odata/v1/$Metadata#MediaFiles/ServerNamespace.Media.MediaFile","value": [
{
"@odata.type": "#ServerNamespace.Media.MediaFile",....
}
]
}
但是如果我查看元数据:
<EntitySet Name="MediaFiles" EntityType="ServerNamespace.Media.FileItemInfo"/>
错误发生在 DataServiceQuery.Take(10)
上,给出异常
InvalidOperationException:
The response payload is a not a valid response payload. Please make sure that the top level element is a valid Atom or JSON element or belongs to 'http://docs.oasis-open.org/odata/ns/data' namespace.
是的,我检查了正文是否是有效的 JSON 以及标题是否正确。
如您所见,MetaData 描述了 FileItemInfo
的类型,而响应 JSON 的类型为 MediaFile
在有人问之前,不,我无法更改或调试服务器代码,因为这是第三方。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)