Aracılığıyla paylaş


QueryIterator class

Azure Cosmos DB veritabanı hizmetinde yanıt üzerinde dolaşmayı ve yinelemeyi sağlayan bir akış veya sorgu yanıtı uygulaması olan QueryIterator Nesnesini temsil eder.

Yöntemler

fetchAll()

Sorgunun tüm sayfalarını getirin ve tek bir FeedResponse döndürür.

fetchNext()

Akıştan sonraki toplu işlemi alın.

Bu, ayarlarınıza ve sorgu türüne bağlı olarak arka uçtan daha fazla sayfa getirebilir veya getirmeyebilir. Toplam sorgular genellikle ilk yanıt toplu işlemini döndürmeden önce tüm arka uç sayfalarını getirir.

getAsyncIterator()

Tamamlanıncaya kadar sonuç verecek zaman uyumsuz bir yineleyici alır.

NOT: AsyncIterators çok yeni bir özelliktir ve bunları kodunuzda kullanmak için polyfils/vb. kullanmanız gerekebilir.

TypeScript kullanıyorsanız, ES6 veya üzerini hedeflediğiniz ve Düğüm 6 veya üzeri üzerinde çalıştığınız sürece aşağıdaki polyfill'i kullanabilirsiniz.

if (!Symbol || !Symbol.asyncIterator) {
  (Symbol as any).asyncIterator = Symbol.for("Symbol.asyncIterator");
}

Örnek

Tüm veritabanlarında yineleme

for await(const { resources: db } of client.databases.readAll().getAsyncIterator()) {
  console.log(`Got ${db} from AsyncIterator`);
}
hasMoreResults()

Devam belirtecinin değerine veya QueryIterator'daki geçerli toplu işte kalan öğelere göre işlenmek üzere hala kalan kaynaklar olup olmadığını belirleyin.

reset()

QueryIterator'ı en başa sıfırlayın ve içindeki tüm kaynakları temizleyin

Yöntem Ayrıntıları

fetchAll()

Sorgunun tüm sayfalarını getirin ve tek bir FeedResponse döndürür.

function fetchAll(): Promise<FeedResponse<T>>

Döndürülenler

Promise<FeedResponse<T>>

fetchNext()

Akıştan sonraki toplu işlemi alın.

Bu, ayarlarınıza ve sorgu türüne bağlı olarak arka uçtan daha fazla sayfa getirebilir veya getirmeyebilir. Toplam sorgular genellikle ilk yanıt toplu işlemini döndürmeden önce tüm arka uç sayfalarını getirir.

function fetchNext(): Promise<FeedResponse<T>>

Döndürülenler

Promise<FeedResponse<T>>

getAsyncIterator()

Tamamlanıncaya kadar sonuç verecek zaman uyumsuz bir yineleyici alır.

NOT: AsyncIterators çok yeni bir özelliktir ve bunları kodunuzda kullanmak için polyfils/vb. kullanmanız gerekebilir.

TypeScript kullanıyorsanız, ES6 veya üzerini hedeflediğiniz ve Düğüm 6 veya üzeri üzerinde çalıştığınız sürece aşağıdaki polyfill'i kullanabilirsiniz.

if (!Symbol || !Symbol.asyncIterator) {
  (Symbol as any).asyncIterator = Symbol.for("Symbol.asyncIterator");
}

Örnek

Tüm veritabanlarında yineleme

for await(const { resources: db } of client.databases.readAll().getAsyncIterator()) {
  console.log(`Got ${db} from AsyncIterator`);
}
function getAsyncIterator(): AsyncIterable<FeedResponse<T>>

Döndürülenler

AsyncIterable<FeedResponse<T>>

hasMoreResults()

Devam belirtecinin değerine veya QueryIterator'daki geçerli toplu işte kalan öğelere göre işlenmek üzere hala kalan kaynaklar olup olmadığını belirleyin.

function hasMoreResults(): boolean

Döndürülenler

boolean

QueryIterator'da işlenmek üzere başka öğeler varsa true.

reset()

QueryIterator'ı en başa sıfırlayın ve içindeki tüm kaynakları temizleyin

function reset()