【问题标题】:How to convert Json string with array of objects to a datatable?如何将带有对象数组的 Json 字符串转换为数据表?
【发布时间】:2015-11-21 07:21:29
【问题描述】:

代码将 json 字符串转换为表格。但我的问题是,它绕过了 Array Chars。所以表格上只打印了两个字段。它有点跳过中间字段:“Chars”

Dim JsonStr As String = "[{""Name"": ""Banana Pudding"", ""Chars"": [""abc"",""xyz""],""ID"": ""143""}]"
        tb = JsonConvert.DeserializeObject(Of DataTable)(JsonStr)
        GridView1.DataSource = tb
        GridView1.DataBind()

【问题讨论】:

  • 它不会绕过它,它会将数组 object 存储在第 1 列中。您必须想办法解压数组。

标签: json vb.net datatable


【解决方案1】:

您的数据库不支持将数组作为字符串,实际上我不知道有任何数据库可以将字符串强制转换为数组,您必须将 Chars 的值更改为简单类型,将其断开,它将起作用。 您可以使用二进制字段而不是表中的字符串来测试您的代码,您没有提到您使用的是哪个 DBMS,所以我不能更具体。但是使用二进制字段,值得一试,在将数组分解为简单类型之前尝试一下。

【讨论】:

  • 欢迎来到 StackOverflow。问候和问候通常不会在问题/答案中添加任何内容,并且会受到 SO 社区的反对。
  • Sam,谢谢你的建议,请接受我的道歉,我已经删除了 cmets,他们非常粗鲁,我只是不知道为什么那天我是个混蛋。
  • 不用担心。我们都有让我们烦恼的日子。非常感谢您的说明,谢谢。
猜你喜欢
  • 2023-03-15
  • 2021-05-12
  • 1970-01-01
  • 2015-01-25
  • 2013-06-25
  • 1970-01-01
  • 2013-08-29
  • 2013-11-01
  • 2016-03-23
相关资源
最近更新 更多