问题描述
如果我有一个带有 TRESTResponseDataSetAdapter
的 RootElement = 'testdata'
并为它提供以下 JSON,它会向连接的数据集添加一行。
RESTResponseDataSetAdapter1.ResponseJSON := TRESTResponseJSON.Create(
Form1,TJSONObject.ParseJSONValue('{"testdata":[]}'),true
);
如果我在数组中提供一些数据,我会在数据集中得到预期的行,但如果数组为空,我会得到一行似乎都是空值。
似乎获得空数据集的唯一方法是提供无效的内容,例如 {"testdata":[,]}
。这给了我一个空数据集而不会产生任何错误。
这是预期的行为吗?如果没有,这里可能是什么问题?我曾尝试更改 TypesMode
,但无论是哪种设置,我都得到相同的结果。
我使用的数据集是来自 TdxMemData
的 DevExpress
。我最近从 Delphi 10.2 升级到 Delphi 10.4。事情在 10.2 上运行良好(即,如果 JSON 数组为空,则数据集也将为空),因此似乎在 10.3 或 10.4 中发生了一些变化。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)