Aracılığıyla paylaş


ObjectAdapter.Add(Operation, Object) Yöntem

Tanım

"ekle" işlemi, hedef konumun başvuracaklarına bağlı olarak aşağıdaki işlevlerden birini gerçekleştirir:

o Hedef konum bir dizi dizini belirtiyorsa, belirtilen dizinde diziye yeni bir değer eklenir.

o Hedef konum henüz mevcut olmayan bir nesne üyesini belirtirse, nesneye yeni bir üye eklenir.

o Hedef konum var olan bir nesne üyesini belirtirse, o üyenin değeri değiştirilir.

İşlem nesnesi, içeriği eklenecek değeri belirten bir "value" üyesi içermelidir.

Örnek:

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

İşlem uygulandığında hedef konumun aşağıdakilerden birine başvurmaSı GEREKIR:

o Hedef belgenin kökü - burada belirtilen değer hedef belgenin tüm içeriği olur.

o Mevcut bir nesneye eklenecek bir üye - burada sağlanan değer belirtilen konumda bu nesneye eklenir. Üye zaten varsa, belirtilen değerle değiştirilir.

o Varolan bir diziye eklenecek öğe - sağlanan değerde belirtilen konumda diziye eklenir. Belirtilen dizindeki veya üzerindeki tüm öğeler bir konum sağa kaydırılır. Belirtilen dizin dizideki öğe sayısından büyük OLMALI. Dizinin sonunu dizine almak için "-" karakteri kullanılıyorsa (bkz. [RFC6901]), bu, değeri diziye ekleme etkisine sahiptir.

Bu işlem mevcut nesnelere ve dizilere eklenecek şekilde tasarlandığından, hedef konumu genellikle mevcut olmaz. İşaretçinin hata işleme algoritması bu nedenle çağrılsa da, bu belirtim bu hatayı yoksaymak ve değeri belirtildiği gibi eklemek üzere "ekle" işaretçileri için hata işleme davranışını tanımlar.

Ancak, nesnenin veya onu içeren bir dizinin var olması gerekir ve böyle olmaması hata olarak kalır. Örneğin, hedef konumu "/a/b" olan ve bu belgeyle başlayan bir "ekle":

{ "a": { "foo": 1 } }

hata değildir, çünkü "a" vardır ve "b" değeri eklenir. Bu belgedeki bir hatadır:

{ "q": { "bar": 2 } }

çünkü "a" yok.

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)

Parametreler

operation
Operation

Ekleme işlemi.

objectToApplyTo
Object

İşlemin uygulanacağı nesne.

Uygulamalar

Şunlara uygulanır