ObjectAdapter.Add(Operation, Object) Metoda

Definice

Operace "přidat" provádí jednu z následujících funkcí v závislosti na tom, na jaké cílové umístění odkazuje: o Pokud cílové umístění určuje index pole, vloží se do pole nová hodnota v zadaném indexu.

o Pokud cílové umístění určuje člen objektu, který ještě neexistuje, přidá se do objektu nový člen.

o Pokud cílové umístění určuje člen objektu, který existuje, hodnota daného člena je nahrazena.

Objekt operace musí obsahovat člen "value", jehož obsah určuje hodnotu, která se má přidat.

Příklad: { "op": "add", "path": "/a/b/c", "value": [ "foo", "bar" ] } Při použití operace musí cílové umístění odkazovat na jednu z těchto možností: o Kořen cílového dokumentu – kde zadaná hodnota se stane celým obsahem cílového dokumentu.

o Člen, který se má přidat k existujícímu objektu – kde zadaná hodnota se přidá do daného objektu v určeném umístění. Pokud již člen existuje, nahradí se zadanou hodnotou.

o Prvek, který se má přidat do existujícího pole – kde je zadaná hodnota přidána do pole na určeném místě. Všechny prvky na zadaném indexu nebo nad zadaným indexem jsou posunuty o jednu pozici doprava. Zadaný index nesmí být větší než počet prvků v matici. Pokud se znak "-" používá k indexování konce pole (viz [RFC6901]), má to vliv na připojení hodnoty k matici.

Vzhledem k tomu, že je tato operace navržená tak, aby se přidala k existujícím objektům a polím, její cílové umístění často neexistuje. I když se tedy vyvolá algoritmus zpracování chyb ukazatele, tato specifikace definuje chování při zpracování chyb pro "přidání" ukazatelů, které tuto chybu ignorují a přidají hodnotu, jak je uvedeno.

Samotný objekt nebo pole, které obsahuje, však musí existovat a zůstává chybou, aby se nejedná o případ. Například "přidat" s cílovým umístěním "/a/b" počínaje tímto dokumentem: { "a": { "foo": 1 } není chyba, protože existuje "a" a "b" se přidá k její hodnotě. V tomto dokumentu se jedná o chybu: { "q": { "bar": 2 } protože "a" neexistuje.

public:
 virtual void Add(Microsoft::AspNetCore::JsonPatch::Operations::Operation ^ operation, System::Object ^ objectToApplyTo);
public void Add (Microsoft.AspNetCore.JsonPatch.Operations.Operation operation, object objectToApplyTo);
abstract member Add : Microsoft.AspNetCore.JsonPatch.Operations.Operation * obj -> unit
override this.Add : Microsoft.AspNetCore.JsonPatch.Operations.Operation * obj -> unit
Public Sub Add (operation As Operation, objectToApplyTo As Object)

Parametry

operation
Operation

Operace přidání.

objectToApplyTo
Object

Objekt, na který se má operace použít.

Implementuje

Platí pro