【问题标题】:JsonObject in .NET for Windows Store App.NET for Windows Store App 中的 JsonObject
【发布时间】:2012-03-11 16:22:30
【问题描述】:

我使用以下代码从 API 获取响应字符串:

HttpResponseMessage response = await client.GetAsync(url);
string responseText = await response.Content.ReadAsStringAsync();

但是我无法找出如何初始化 JsonObject,因为在 .NET for WinRT 中,构造函数 JsonObject() 不接受任何参数。对于记忆,我可以在“常规”.NET Framework 中制作这样的内容:

JsonObject root = new JsonObject(responseText);

我错过了什么?

【问题讨论】:

  • 常规 .Net Framework 中没有 JsobObject。 Silverlight 中有一个,.Net 4.5 中有一个,但之前没有。

标签: c# windows-runtime windows-store-apps


【解决方案1】:

如果您想将响应序列化为JsonObject,您应该使用JsonObject.Parse(string)JsonObject.TryParse(string, out JsonObject) 方法。

【讨论】:

    【解决方案2】:

    除非您真的需要解析/遍历 JSON 编码的字符串,否则您可能需要的只是反序列化它。以下是有关执行此操作的 Microsoft 文档。

    Deserialize JSON Encoded String

    我个人喜欢使用 Newtonsoft 的 JSON API 来完成这项任务。

    MyObject obj = JsonConvert.DeserializeObject<MyObject>(jsonEncodedString);
    

    Newtonsoft's JSON API

    希望这会有所帮助。

    【讨论】:

    • 可悲的是 Newtonsoft 还没有在 winrt 上运行并且移植它是不平凡的:/
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-20
    • 1970-01-01
    • 2014-03-21
    • 1970-01-01
    • 1970-01-01
    • 2012-12-14
    • 2012-06-20
    相关资源
    最近更新 更多