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

标签 c# json javascriptserializer

如何使用 JavaScriptSerializer 解析一些未知的动态 JSON。特别是,我正在为 Google Calendar API 编写自己的包装器。一个事件有一个名为 extendedProperties 的对象,它有一个私有(private)对象和一个包含一组未知属性的共享对象:

"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 可以读/写的属性的返回类型是什么?某种字典?

提前致谢!

最佳答案

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

我已经使用这段代码反序列化未知的 json 对象。

关于c# - 在 C# 中使用 JavascriptSerializer 解析未知的 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9074721/

相关文章:

json - 如何保护服务免受 gzip 炸弹的攻击?

javascript - 将 json 数据格式化为表 React.js

c# - 在 C# 中反序列化 JSON 日期时出现问题 - 添加 2 小时

c# - 如何在服务器标记的 aspx 文件中调用代码隐藏函数

c# - ASP.NET MVC : is it a good idea to return a File result from a byte[]?

c# - 如何删除Windows Mobile的SIP按钮

c# - 为什么 JavaScriptSerializer 不能序列化内部属性?

c# - 无法翻译 EF Core 3 Linq

json - swift 2中NSJSONSerialization的线程中断1.1

c# - 如何从 JavaScriptSerializer 生成的对象中提取信息