首页 > 解决方案 > Delphi 10.4 - 通过 RESTResponseDataSetAdapter 从 RestRequest 定义 tfield 大小

问题描述

我搜索了半天的Delphi帮助,但找不到任何解决我问题的方法。有一个以 FMX 形式编写的 Delphi 客户端,但这在这里应该不是问题,在 vcl 或终端中也存在同样的问题。我使用 TRESTRequest -> RESTClient -> RESTResponse -> TRESTResponseDatasetAdapter -> tFdmemtable -> Livebinding -> tStringgrid 构造。一切都可以正常获取数据。但我想写一些更新回到该服务并插入新数据。

在我的表单上有一个保存按钮。当按下那个保存按钮时,我的计划是将每个新的和更新的数据集,用 FDMEMtable 写回 Webservice。

那时我有一个非常烦人的问题。

第一个 RestRequest 只返回一个字符串,比如说“Hello”,所以 TrestResponseDatasetAdapter 会查看这个字符串并做出“好的,这是一个大小为 5 的字符串”的决定。到目前为止一切都很好,但是 Rest Service 中的字段本身可以处理大小为 50 的字符串。因此,当我在 Grid 中添加新 Row 并键入新值时,Grid 只会保存 5 位,因为 TrestResponseDatasetAdapter 将我的 tmemtable 字段设置为大小 5 .

我试图使用来自 TrestResponseDatasetAdapter 的 Fielddefs ,但我失去了动态加载每个新字段的可能性。如果未在 TrestResponseDatasetAdapter 中定义,则不会出现在 Grid 中。有什么建议么?

标签: restdelphiadapter

解决方案


推荐阅读