JsonObject 類別

定義

表示包含名稱和 JsonValue 配對集合的 JSON 物件。

JsonObject 是可啟用的類別,可實作JsonValueIMap < String,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 Platform::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)

取得具有指定名稱的 String 值。

GetNamedString(String, String)

取得具有指定名稱的 String 值,如果找不到這類具名值,則為提供的預設值。

GetNamedValue(String)

取得具有指定名稱的 JsonValue 值。

GetNamedValue(String, JsonValue)

取得指定的 JsonValue 值,如果沒有找到這類具名值,則為提供的預設值。

GetNumber()

如果封裝值的ValueType為 (Number,則取得Double) 數位

GetObject()

如果封裝值的ValueTypeObject,則取得JsonObject

GetString()

如果封裝值的ValueTypeString,則取得String

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

適用於

另請參閱