2

我取一个 json 对象并将其反序列化为一个变量。当我调试时,我看到每个元素在结果视图中都像数组一样列出,但无论我尝试什么,我都无法获得这些值。我的json字符串:

string json_string = { "baslik" : "bbbbb", "soru1" : "11","soru2" : "22","soru3" : "33"};

var my_object = JsonConvert.DeserializeObject(json_string);

当我调试时,我看到“my_object”有结果视图和动态视图,其中包含我需要的元素。我怎样才能得到它们。我尝试了一切并在网上搜索,但找不到任何东西。

4

3 回答 3

2

您可以使用该dynamic变量并JObject.Parse获取如下值:

dynamic my_object = JObject.Parse(json_string);
Console.WriteLine(my_object.baslik);
于 2016-11-02T10:37:14.267 回答
0

您也可以尝试使用 JsonConvert.DeserializeObject 或 DeserializeAnonymousType 并将类型定义作为参数传递。

这将允许您测试数据的结构是否符合预期,并且您将能够直接从结果对象访问预期的属性,而不必添加对 JObject 的依赖项。

有关示例,请参阅文档:https ://www.newtonsoft.com/json/help/html/DeserializeAnonymousType.htm

于 2017-12-29T20:10:51.337 回答
0

尝试这样做:

        string json_string ="{ 'baslik' : 'bbbbb', 'soru1' : '11','soru2' : '22','soru3' : '33'}";
        var jsonObject = (JObject)JsonConvert.DeserializeObject(json_string);
        Console.WriteLine(jsonObject.GetValue("baslik"));
于 2016-11-02T10:31:17.180 回答