Partager via


ObjectAdapter.Add(Operation, Object) Méthode

Définition

L’opération « add » exécute l’une des fonctions suivantes, selon ce que l’emplacement cible référence :

o Si l’emplacement cible spécifie un index de tableau, une nouvelle valeur est insérée dans le tableau à l’index spécifié.

o Si l’emplacement cible spécifie un membre d’objet qui n’existe pas déjà, un nouveau membre est ajouté à l’objet.

o Si l’emplacement cible spécifie un membre d’objet qui existe, la valeur de ce membre est remplacée.

L’objet d’opération DOIT contenir un membre « value » dont le contenu spécifie la valeur à ajouter.

Par exemple :

{ « op »: « add », « path »: « /a/b/c », « value »: [ « foo », « bar » ] }

Lorsque l’opération est appliquée, l’emplacement cible DOIT référencer l’un des éléments suivants :

o Racine du document cible : la valeur spécifiée devient alors l’intégralité du contenu du document cible.

o Membre à ajouter à un objet existant : la valeur fournie est ajoutée à cet objet à l’emplacement indiqué. Si le membre existe déjà, il est remplacé par la valeur spécifiée.

o Élément à ajouter à un tableau existant , où la valeur fournie est ajoutée au tableau à l’emplacement indiqué. Tous les éléments au-dessus de l’index spécifié sont déplacés d’une position vers la droite. L’index spécifié NE DOIT PAS être supérieur au nombre d’éléments dans le tableau. Si le caractère « - » est utilisé pour indexer la fin du tableau (voir [RFC6901]), cela a pour effet d’ajouter la valeur au tableau.

Étant donné que cette opération est conçue pour ajouter des objets et des tableaux existants, son emplacement cible n’existe souvent pas. Bien que l’algorithme de gestion des erreurs du pointeur soit ainsi appelé, cette spécification définit le comportement de gestion des erreurs pour les pointeurs « ajouter » afin d’ignorer cette erreur et d’ajouter la valeur comme spécifié.

Toutefois, l’objet lui-même ou un tableau qui le contient doit exister, et cela reste une erreur pour que cela ne soit pas le cas. Par exemple, un « add » avec l’emplacement cible « /a/b » commençant par ce document :

{ « a »: { « foo »: 1 } }

n’est pas une erreur, car « a » existe et « b » est ajouté à sa valeur. Il s’agit d’une erreur dans ce document :

{ « q »: { « bar »: 2 } }

parce que « a » n’existe pas.

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)

Paramètres

operation
Operation

Opération d’ajout.

objectToApplyTo
Object

Objet auquel appliquer l’opération.

Implémente

S’applique à