首页 > 解决方案 > 从 JSON 对象中获取键值

问题描述

winform通过我设法获取数据将对象传递给 C# 应用程序socketIO,但是无法从对象获取键值,到目前为止,下面是我从套接字服务器捕获数据的代码。

socket.On("traverseLeft", (data) =>
    {
        Invoke(new Action(() =>
        {

           MessageBox.Show(data.ToString());

        }));

    });

所以我的输出如下,我需要得到的是interactive_link的值为“sub”,我怎样才能在C#上实现呢?

{  
   "msg":{  
      "interactive_link":"sub"
   }
}

标签: c#json

解决方案


首先,下载 Newtonsoft NuGet 包:Newtonsoft.Json从 NuGet。

然后创建以下类:

public class RootObject
{
    [JsonProperty("msg")]
    public Message Message { get; set; }
}

public class Message
{
    [JsonProperty("interactive_link")]
    public string InteractiveLink { get; set; }
}

最后这样做:

var inputObj = JsonConvert.DeserializeObject<RootObject>(data);
var message = inputObj.Message.InteractiveLink;
MessageBox.Show(message);

希望这可以帮助。


推荐阅读