ObjectAdapter.Add(Operation, Object) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Operace "add" provede jednu z následujících funkcí v závislosti na tom, na co cílová umístění odkazuje:
o Pokud cílové umístění určuje index pole, vloží se do pole v zadaném indexu nová hodnota.
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, nahradí se hodnota člena.
Objekt operace MUSÍ obsahovat "value" člen, jehož obsah určuje hodnotu, která má být přidána.
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 – zadaná hodnota se stane celým obsahem cílového dokumentu.
o Člen, který se má přidat k existujícímu objektu – načež se k danému objektu v určeném umístění přidá zadaná hodnota. Pokud již člen existuje, nahradí se zadanou hodnotou.
o Prvek, který se má přidat do existujícího pole – načež se do pole v určeném umístění přidá zadaná hodnota. Všechny prvky v zadaném indexu nebo nad ho jsou posunuty o jednu pozici doprava. Zadaný index NESMÍ být větší než počet prvků v poli. Pokud se znak "-" použije k indexování konce pole (viz [RFC6901]), má to za následek připojení hodnoty k matici.
Vzhledem k tomu, že tato operace je určená k přidání do existujících objektů a polí, její cílové umístění často neexistuje. I když tedy bude vyvolán algoritmus zpracování chyb ukazatele, tato specifikace definuje chování při zpracování chyb pro ukazatele "add" tak, aby se tato chyba ignorovala a přidala hodnotu podle zadání.
Samotný objekt nebo pole, které ho obsahuje, však musí existovat a zůstane chybou, aby tomu tak nebylo. Například "add" s cílovým umístěním "/a/b" počínaje tímto dokumentem:
{ "a": { "foo": 1 } }
není chyba, protože "a" existuje a "b" se přidá k jeho hodnotě. Jedná se o chybu v tomto dokumentu:
{ "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.