JsonObject 类

定义

表示包含名称和 JsonValue 对集合的 JSON 对象。

JsonObject 是一个可激活类,用于实现 JsonValueIMap<字符串、IJsonValue> 接口,以便其名称/值对可以像字典一样操作。 当存在具有重复名称的值时,将存储姓氏/值对。

public ref class JsonObject sealed : IIterable<IKeyValuePair<Platform::String ^, IJsonValue ^> ^>, IMap<Platform::String ^, IJsonValue ^>, IStringable
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class JsonObject final : IIterable<IKeyValuePair<winrt::hstring, IJsonValue const&>>, IMap<winrt::hstring, IJsonValue const&>, IStringable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class JsonObject final : IIterable<IKeyValuePair<winrt::hstring, IJsonValue const&>>, IMap<winrt::hstring, IJsonValue const&>, IStringable
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class JsonObject : IDictionary<string,IJsonValue>, IEnumerable<KeyValuePair<string,IJsonValue>>, IStringable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class JsonObject : IDictionary<string,IJsonValue>, IEnumerable<KeyValuePair<string,IJsonValue>>, IStringable
Public NotInheritable Class JsonObject
Implements IDictionary(Of String, IJsonValue), IEnumerable(Of KeyValuePair(Of String, IJsonValue)), IStringable
继承
Object IInspectable JsonObject
属性
实现

Windows 要求

设备系列
Windows 10 (在 10.0.10240.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)

注解

有关如何使用这些类方法分析 JSON 字符串中的对象并将其转换为 JsonObject 对象的示例,请更新对象包含的名称/值对,然后将更新后的 JsonObject 对象序列化为 JSON 字符串,请参阅 使用 JavaScript 对象表示法 (JSON)

构造函数

JsonObject()

初始化 JsonObject 的新实例,该实例表示包含名称和 JsonValue 对集合的 JSON 对象。

属性

Size

获取集合) 的大小 (计数。

ValueType

获取封装的 JSON 值的类型。 可能的类型由 JsonValueType 定义。

方法

Clear()

从集合中移除所有项。

First()

返回迭代器,用于迭代 JsonObject 中的键/值对。

GetArray()

如果封装值的 ValueTypeArray,则返回 JsonArray

GetBoolean()

如果封装值的 ValueType 为布尔值,则获取布尔值

GetNamedArray(String)

获取具有指定名称的 JsonArray 值。

GetNamedArray(String, JsonArray)

获取具有指定名称的 JsonArray 值;如果未找到此类命名值,则获取提供的默认值。

GetNamedBoolean(String)

获取具有指定名称的 布尔 值。

GetNamedBoolean(String, Boolean)

获取具有指定名称的 布尔 值;如果未找到此类命名值,则获取提供的默认值。

GetNamedNumber(String)

获取具有指定名称的 Double) (数字值。

GetNamedNumber(String, Double)

获取数字值 (具有指定名称的 Double) ;如果未找到此类命名值,则获取提供的默认值。

GetNamedObject(String)

获取具有指定名称的 JsonObject 值。

GetNamedObject(String, JsonObject)

获取具有指定名称的 JsonObject 值;如果未找到此类命名值,则获取提供的默认值。

GetNamedString(String)

获取具有指定名称的 字符串 值。

GetNamedString(String, String)

获取具有指定名称的 字符串 值;如果未找到此类命名值,则获取提供的默认值。

GetNamedValue(String)

获取具有指定名称的 JsonValue 值。

GetNamedValue(String, JsonValue)

获取指定的 JsonValue 值;如果未找到此类命名值,则获取提供的默认值。

GetNumber()

如果封装值的 ValueType 为 Number,则获取 (Double) 的数字

GetObject()

如果封装值的 ValueTypeObject,则获取 JsonObject

GetString()

如果封装值的 ValueTypeString,则获取字符串

GetView()

获取 JsonObject 视图。

HasKey(String)

指示 JsonObject 是否具有具有请求的键的条目。

Insert(String, IJsonValue)

JsonObject 添加新条目。

Lookup(String)

获取与提供的键关联的 JSON 值(如果存在具有该键的条目)。

Parse(String)

将表示 JsonObject 的指定 JSON 字符串分析为 JSON 值。

备注

如果提供的 JSON 字符串无效,则会引发异常。 建议使用 JsonObject.TryParseTryParse 调用将返回一个布尔值来指示成功或失败,如果成功,则返回生成的 JsonObject

Remove(String)

JsonObject 中删除特定项。

SetNamedValue(String, IJsonValue)

将具有指定名称的第一个 JsonValue 对象的值设置为指定值。 如果未找到此类对象,则会将新的名称和 JsonValue 对插入到 JSON 对象中。

Stringify()

检索封装值的 JSON 表示形式。

ToString()

检索封装值的 JSON 表示形式。

TryParse(String, JsonObject)

将表示 JSON 对象的指定字符串分析为 JsonObject

适用于

另请参阅