ObjectAdapter.Add(Operation, Object) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Der Vorgang "hinzufügen" führt eine der folgenden Funktionen aus, je nachdem, auf was der Zielspeicherort verweist:
o Wenn der Zielspeicherort einen Arrayindex angibt, wird am angegebenen Index ein neuer Wert in das Array eingefügt.
o Wenn der Zielspeicherort ein Objektmember angibt, das noch nicht vorhanden ist, wird dem Objekt ein neues Element hinzugefügt.
o Wenn der Zielspeicherort ein Objektmember angibt, das vorhanden ist, wird der Wert dieses Elements ersetzt.
Das Vorgangsobjekt MUSS ein "value"-Element enthalten, dessen Inhalt den hinzuzufügenden Wert angibt.
Beispiel:
{ "op": "add", "path": "/a/b/c", "value": [ "foo", "bar" ] }
Wenn der Vorgang angewendet wird, MUSS der Zielspeicherort auf einen der folgenden Verweisen verweisen:
o Der Stamm des Zieldokuments, wobei der angegebene Wert zum gesamten Inhalt des Zieldokuments wird.
o Ein Element, das einem vorhandenen Objekt hinzugefügt werden soll, wobei der angegebene Wert diesem Objekt an der angegebenen Position hinzugefügt wird. Wenn der Member bereits vorhanden ist, wird es durch den angegebenen Wert ersetzt.
o Ein Element, das einem vorhandenen Array hinzugefügt werden soll, wobei der angegebene Wert dem Array an der angegebenen Position hinzugefügt wird. Alle Elemente am oder oberhalb des angegebenen Indexes werden um eine Position nach rechts verschoben. Der angegebene Index DARF NICHT größer als die Anzahl der Elemente im Array sein. Wenn das Zeichen "-" verwendet wird, um das Ende des Arrays zu indizieren (siehe [RFC6901]), hat dies den Effekt, dass der Wert an das Array angefügt wird.
Da dieser Vorgang zum Hinzufügen zu vorhandenen Objekten und Arrays konzipiert ist, ist der Zielspeicherort häufig nicht vorhanden. Obwohl der Fehlerbehandlungsalgorithmus des Zeigers somit aufgerufen wird, definiert diese Spezifikation das Fehlerbehandlungsverhalten für "add"-Zeiger, um diesen Fehler zu ignorieren und den Wert wie angegeben hinzuzufügen.
Das Objekt selbst oder ein Array, das es enthält, muss jedoch vorhanden sein, und es bleibt ein Fehler, damit dies nicht der Fall ist. Beispielsweise ein "add" mit dem Zielspeicherort "/a/b", der mit diesem Dokument beginnt:
{ "a": { "foo": 1 } }
ist kein Fehler, da "a" vorhanden ist und "b" zu seinem Wert hinzugefügt wird. Es handelt sich um einen Fehler in diesem Dokument:
{ "q": { "bar": 2 } }
da "a" nicht vorhanden ist.
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)
Parameter
- operation
- Operation
Der Add-Vorgang.
- objectToApplyTo
- Object
Objekt, auf das der Vorgang angewendet werden soll.