QueryIterator class

يمثل كائن QueryIterator، وهو تنفيذ للموجز أو استجابة الاستعلام التي تمكن من اجتياز الاستجابة والتكرار عبر الاستجابة في خدمة قاعدة بيانات Azure Cosmos DB.

الأساليب

fetchAll()

إحضار كافة الصفحات للاستعلام وإرجاع FeedResponse واحد.

fetchNext()

استرداد الدفعة التالية من الموجز.

قد يؤدي هذا إلى جلب المزيد من الصفحات من الواجهة الخلفية أو عدم إحضارها استنادا إلى إعداداتك ونوع الاستعلام. سوف تجلب الاستعلامات المجمعة بشكل عام جميع الصفحات الخلفية قبل إرجاع الدفعة الأولى من الاستجابات.

getAsyncIterator()

يحصل على مكرر غير متزامن سيؤدي إلى نتائج حتى الاكتمال.

ملاحظة: تعد AsyncIterators ميزة جديدة جدا وقد تحتاج إلى استخدام polyfils/etc. من أجل استخدامها في التعليمات البرمجية الخاصة بك.

إذا كنت تستخدم TypeScript، يمكنك استخدام polyfill التالي طالما أنك تستهدف ES6 أو أعلى وتعمل على العقدة 6 أو أعلى.

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

مثال

التكرار عبر جميع قواعد البيانات

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

حدد ما إذا كانت لا تزال هناك موارد متبقية لمعالجتها استنادا إلى قيمة رمز المتابعة المميز أو العناصر المتبقية على الدفعة الحالية في QueryIterator.

reset()

إعادة تعيين QueryIterator إلى البداية ومسح جميع الموارد الموجودة بداخله

تفاصيل الأسلوب

fetchAll()

إحضار كافة الصفحات للاستعلام وإرجاع FeedResponse واحد.

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

المرتجعات

Promise<FeedResponse<T>>

fetchNext()

استرداد الدفعة التالية من الموجز.

قد يؤدي هذا إلى جلب المزيد من الصفحات من الواجهة الخلفية أو عدم إحضارها استنادا إلى إعداداتك ونوع الاستعلام. سوف تجلب الاستعلامات المجمعة بشكل عام جميع الصفحات الخلفية قبل إرجاع الدفعة الأولى من الاستجابات.

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

المرتجعات

Promise<FeedResponse<T>>

getAsyncIterator()

يحصل على مكرر غير متزامن سيؤدي إلى نتائج حتى الاكتمال.

ملاحظة: تعد AsyncIterators ميزة جديدة جدا وقد تحتاج إلى استخدام polyfils/etc. من أجل استخدامها في التعليمات البرمجية الخاصة بك.

إذا كنت تستخدم TypeScript، يمكنك استخدام polyfill التالي طالما أنك تستهدف ES6 أو أعلى وتعمل على العقدة 6 أو أعلى.

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

مثال

التكرار عبر جميع قواعد البيانات

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

المرتجعات

AsyncIterable<FeedResponse<T>>

hasMoreResults()

حدد ما إذا كانت لا تزال هناك موارد متبقية لمعالجتها استنادا إلى قيمة رمز المتابعة المميز أو العناصر المتبقية على الدفعة الحالية في QueryIterator.

function hasMoreResults(): boolean

المرتجعات

boolean

صحيح إذا كانت هناك عناصر أخرى لمعالجتها في QueryIterator.

reset()

إعادة تعيين QueryIterator إلى البداية ومسح جميع الموارد الموجودة بداخله

function reset()