小编典典

将 JSON 字符串转换为 C# 对象

all

尝试将 JSON 字符串转换为 C# 中的对象。使用一个非常简单的测试用例:

JavaScriptSerializer json_serializer = new JavaScriptSerializer();
object routes_list = json_serializer.DeserializeObject("{ \"test\":\"some data\" }");

问题是 routes_list 永远不会被设置;这是一个未定义的对象。有任何想法吗?


阅读 30

收藏
2022-06-23

共1个答案

小编典典

看起来您正在尝试反序列化为原始对象。您可以创建一个代表您要转换为的对象的类。这在您处理较大的对象或 JSON 字符串的情况下最有用。

例如:

  class Test {

      String test;

      String getTest() { return test; }
      void setTest(String test) { this.test = test; }

  }

那么您的反序列化代码将是:

   JavaScriptSerializer json_serializer = new JavaScriptSerializer();
   Test routes_list = 
          (Test)json_serializer.DeserializeObject("{ \"test\":\"some data\" }");

可以在本教程中找到更多信息:http: //www.codeproject.com/Tips/79435/Deserialize-JSON-with-
Csharp.aspx

2022-06-23