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

请求指导将指定JSON转换为VB.NET强类型类

帮你创建对应的VB.NET强类型类

嘿Jake,完全理解你从SOAP转REST的不习惯——毕竟SOAP的强类型类都是VS自动搞定的,REST一开始确实有点摸不着头脑。不过别担心,我来帮你把这个错误响应的JSON转换成VB.NET的强类型类,顺便告诉你一个VS的小技巧,以后不用手动写啦!

首先先拆解你收到的JSON结构:

  • 根对象包含两个属性:Message(字符串类型,描述整体错误信息),ModelState(一个键值对集合,键是字段名/路径,值是对应的错误信息数组)

对应的VB.NET类代码如下:

Imports System.Collections.Generic

Public Class ApiErrorResponse
    Public Property Message As String
    Public Property ModelState As Dictionary(Of String, String())
End Class

额外小技巧:让VS自动生成类!

你其实不用手动写这些类,Visual Studio有和SOAP类似的自动生成功能:

  • 把你的JSON字符串复制到剪贴板
  • 在VS里打开一个VB文件,右键→选择性粘贴→将JSON粘贴为类
    VS会自动帮你生成对应的强类型类,是不是和SOAP的体验差不多了😉

反序列化示例(用Newtonsoft.Json)

如果你用Newtonsoft.Json(最常用的JSON库),可以这样把JSON字符串转换成类实例:

Dim jsonString As String = "{""Message"":""The request is invalid."",""ModelState"":{""command"":[""Required property 'Vendor' not found in JSON. Path '', line 1, position 310.""],""command.Terms"":[""The Terms field is required.""]}}"
Dim errorResponse As ApiErrorResponse = Newtonsoft.Json.JsonConvert.DeserializeObject(Of ApiErrorResponse)(jsonString)

这样你就能像操作普通VB类一样访问errorResponse.Message或者errorResponse.ModelState("command")里的错误信息啦。

内容的提问来源于stack exchange,提问作者Jkyle Landicho

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:47:53