You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VB.Net调用API更新数据源时NewRows数组JSON格式异常问题

正确构造NewRows数组实现一行四列数据填充

问题核心

API对NewRows的解析规则明确:

  • 数组中的每个元素对应完整的一行数据
  • 行内多列值需用**无空格的分隔符(通常为逗号)**拼接成单个字符串

之前的错误原因

  1. 错误方式1:用", "(逗号加空格)拼接列值

    • 生成JSON:"NewRows": ["val 1, val 2, val 3, val 4"]
    • API将空格识别为列分隔符,错误拆分出val、1、val、2
  2. 错误方式2:将每个列值作为NewRows独立元素

    • 生成JSON:"NewRows": ["val 1", "val 2", "val 3", "val 4"]
    • API将每个元素判定为单独一行,因此生成4行仅第一列有值的结果

正确实现代码

Dim src As New DSS.DataSource
Dim values As List(Of String) = New List(Of String)

values.Add("val1") 
values.Add("val2")
values.Add("val3")
values.Add("val4") ' 补充第四列值

src.Name = "SourceName"
src.ExternalId = "Source_ExtID"

' 使用无空格逗号拼接成完整一行数据
Dim newRowsString As String = String.Join(",", values)
' 将整行字符串作为NewRows数组的唯一元素
src.NewRows = New List(Of String) From {newRowsString} 

Dim json As String = JsonConvert.SerializeObject(src)
Console.WriteLine(json)

生成的正确JSON输出

{
    "Id": null,
    "Name": "SourceName",
    "ExternalId": "Source_ExtID",
    "Headers": null,
    "Rows": null,
    "NewRows": ["val1,val2,val3,val4"],
    "DeletedRows": null,
    "CompanyId": 0,
    "IntegrationKey": ""
}

最终效果

该JSON会被API正确解析为一行四列数据,与期望结果一致:

col1col2col3col4
val1val2val3val4

内容的提问来源于stack exchange,提问作者Bjorn Meijer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 07:59:55