Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在C中使用JavascriptSerializer解析未知JSON#_C#_Json_Javascriptserializer - Fatal编程技术网

C# 在C中使用JavascriptSerializer解析未知JSON#

C# 在C中使用JavascriptSerializer解析未知JSON#,c#,json,javascriptserializer,C#,Json,Javascriptserializer,如何使用JavaScriptSerializer解析未知的动态JSON。特别是,我正在为谷歌日历API编写自己的包装器。事件有一个名为extendedProperties的对象,其中包含一个私有对象和一个包含未知属性集的共享对象: "extendedProperties": { "private": { "UnknownKey1": "UnknownValue1", "UnknownKey2": "UnknownValue2", "Unkn

如何使用JavaScriptSerializer解析未知的动态JSON。特别是,我正在为谷歌日历API编写自己的包装器。事件有一个名为extendedProperties的对象,其中包含一个私有对象和一个包含未知属性集的共享对象:

"extendedProperties": {
    "private": {
        "UnknownKey1": "UnknownValue1",
        "UnknownKey2": "UnknownValue2",
        "UnknownKey3": "UnknownValue3"
    },
    "shared": {
        "UnknownKey1": "UnknownValue1",
        "UnknownKey2": "UnknownValue2",
        "UnknownKey3": "UnknownValue3"
    }
}
我想为JavaScriptSerializer创建一个类似这样的类:

public class ExtendedProperties
{
    public ??? @private { get; set; }
    public ??? shared { get; set; }
}
当然也有问题

(1) 序列化程序是否理解符号,因此它将解析属性“private”

(2) JavaScriptSerializer可以读/写的属性的返回类型是什么?什么字典


提前谢谢

解析器理解
@
符号。如果您使用的是.net 4,则可以使用
dynamic
作为您的类型。您可以尝试
Dictionary
,尽管我总是在将字典序列化和反序列化到同一引用对象时遇到问题<代码>列表通常起作用。

var serializer=new JavaScriptSerializer();
var serializer = new JavaScriptSerializer();
var jsonObject = serializer.Deserialize<IDictionary<string, object>>(jsonStr);
var jsonObject=serializer.Deserialize(jsonStr);

我使用了这段代码来反序列化未知的json对象

你试过了吗?你的问题包含了你应该能够回答自己的猜测。