JsonExtensionDataAttribute クラス

定義

IDictionary<TKey,TValue> のプロパティに置かれているとき、一致するメンバーがないプロパティは逆シリアル化中にそのディクショナリに追加され、シリアル化中に書き込まれます。When placed on a property of type IDictionary<TKey,TValue>, any properties that do not have a matching member are added to that dictionary during deserialization and written during serialization.

public ref class JsonExtensionDataAttribute sealed : System::Text::Json::Serialization::JsonAttribute
[System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple=false)]
public sealed class JsonExtensionDataAttribute : System.Text.Json.Serialization.JsonAttribute
type JsonExtensionDataAttribute = class
    inherit JsonAttribute
Public NotInheritable Class JsonExtensionDataAttribute
Inherits JsonAttribute
継承
JsonExtensionDataAttribute
属性

注釈

ディクショナリの TKey 値は Stringである必要があり、TValueJsonElement または Objectである必要があります。The dictionary's TKey value must be String, and TValue must be JsonElement or Object.

逆シリアル化中に、Objectを使用すると、"null" の JSON 値が null オブジェクト参照として扱われ、JsonElementを使用すると、"null" は ValueKindJsonValueKind.Nullに設定された JsonElement として扱われます。During deserialization, when using Object, a "null" JSON value is treated as a null object reference, and when using JsonElement, a "null" is treated as a JsonElement with ValueKind set to JsonValueKind.Null.

シリアル化中に、拡張データプロパティの名前は JSON に含まれません。拡張データ内に含まれるデータは、JSON オブジェクトのプロパティとしてシリアル化されます。During serialization, the name of the extension data property is not included in the JSON; the data contained within the extension data is serialized as properties of the JSON object.

この拡張データ属性を持つ型に複数のプロパティがある場合、またはプロパティ自体が適切な 型でない場合は、その型の最初のシリアル化または逆シリアル化の間に InvalidOperationException がスローされます。If there is more than one property on a type with this extension data attribute, or if the property itself is not of the correct type, an InvalidOperationException is thrown during the first serialization or deserialization of that type.

詳細については、「 JSON をシリアル化および逆シリアル化する方法」を参照してください。For more information, see How to serialize and deserialize JSON.

コンストラクター

JsonExtensionDataAttribute()

JsonExtensionDataAttribute クラスの新しいインスタンスを生成します。Instantiates a new instance of the JsonExtensionDataAttribute class.

プロパティ

TypeId

派生クラスで実装されると、この Attribute の一意の識別子を取得します。When implemented in a derived class, gets a unique identifier for this Attribute.

(継承元 Attribute)

メソッド

Equals(Object)

このインスタンスが、指定されたオブジェクトと等価であるかどうかを示す値を返します。Returns a value that indicates whether this instance is equal to a specified object.

(継承元 Attribute)
GetHashCode()

このインスタンスのハッシュ コードを返します。Returns the hash code for this instance.

(継承元 Attribute)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
IsDefaultAttribute()

派生クラスでオーバーライドされるとき、このインスタンスの値が派生クラスの既定値であるかどうかを示します。When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(継承元 Attribute)
Match(Object)

派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(継承元 Attribute)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
ToString()

現在のオブジェクトを表す string を返します。Returns a string that represents the current object.

(継承元 Object)

明示的なインターフェイスの実装

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

一連の名前を対応する一連のディスパッチ識別子に割り当てます。Maps a set of names to a corresponding set of dispatch identifiers.

(継承元 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

オブジェクトの型情報を取得します。この情報はインターフェイスの型情報の取得に使用できます。Retrieves the type information for an object, which can be used to get the type information for an interface.

(継承元 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(継承元 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。Provides access to properties and methods exposed by an object.

(継承元 Attribute)

適用対象