Container.GetItemQueryIterator 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.
Überlädt
GetItemQueryIterator<T>(String, String, QueryRequestOptions) |
Diese Methode erstellt mithilfe einer SQL-Anweisung eine Abfrage für Elemente unter einem Container in einer Azure Cosmos-Datenbank. Es gibt einen FeedIterator zurück. |
GetItemQueryIterator<T>(FeedRange, QueryDefinition, String, QueryRequestOptions) |
Diese Methode erstellt eine Abfrage für Elemente unter einem Container in einer Azure Cosmos-Datenbank mithilfe einer SQL-Anweisung mit parametrisierten Werten. Es gibt einen FeedIterator zurück. Weitere Informationen zum Vorbereiten von SQL-Anweisungen mit parametrisierten Werten finden Sie unter QueryDefinition. |
GetItemQueryIterator<T>(QueryDefinition, String, QueryRequestOptions) |
Diese Methode erstellt eine Abfrage für Elemente unter einem Container in einer Azure Cosmos-Datenbank mithilfe einer SQL-Anweisung mit parametrisierten Werten. Es gibt einen FeedIterator zurück. Weitere Informationen zum Vorbereiten von SQL-Anweisungen mit parametrisierten Werten finden Sie unter QueryDefinition. |
GetItemQueryIterator<T>(String, String, QueryRequestOptions)
- Quelle:
- Container.cs
Diese Methode erstellt mithilfe einer SQL-Anweisung eine Abfrage für Elemente unter einem Container in einer Azure Cosmos-Datenbank. Es gibt einen FeedIterator zurück.
public abstract Microsoft.Azure.Cosmos.FeedIterator<T> GetItemQueryIterator<T> (string queryText = default, string continuationToken = default, Microsoft.Azure.Cosmos.QueryRequestOptions requestOptions = default);
abstract member GetItemQueryIterator : string * string * Microsoft.Azure.Cosmos.QueryRequestOptions -> Microsoft.Azure.Cosmos.FeedIterator<'T>
Public MustOverride Function GetItemQueryIterator(Of T) (Optional queryText As String = Nothing, Optional continuationToken As String = Nothing, Optional requestOptions As QueryRequestOptions = Nothing) As FeedIterator(Of T)
Typparameter
- T
Parameter
- queryText
- String
Der Cosmos SQL-Abfragetext.
- continuationToken
- String
(Optional) Das Fortsetzungstoken im Azure Cosmos DB-Dienst.
- requestOptions
- QueryRequestOptions
(Optional) Die Optionen für die Elementabfrageanforderung.
Gibt zurück
Ein Iterator zum Durchlaufen der Elemente.
Beispiele
- Erstellen sie eine Abfrage, um alle ToDoActivity-Funktionen abzurufen, die kosten größer als 9.000
public class ToDoActivity{
public string id {get; set;}
public string status {get; set;}
public int cost {get; set;}
}
using (FeedIterator<ToDoActivity> feedIterator = this.Container.GetItemQueryIterator<ToDoActivity>(
"select * from ToDos t where t.cost > 9000",
null,
new QueryRequestOptions() { PartitionKey = new PartitionKey("Error")}))
{
while (feedIterator.HasMoreResults)
{
foreach(var item in await feedIterator.ReadNextAsync())
{
Console.WriteLine(item.cost);
}
}
}
- Erstellen Sie einen FeedIterator, um die gesamte ToDoActivity abzurufen.
public class ToDoActivity{
public string id {get; set;}
public string status {get; set;}
public int cost {get; set;}
}
using (FeedIterator<ToDoActivity> feedIterator = this.Container.GetItemQueryIterator<ToDoActivity>(
null,
null,
new QueryRequestOptions() { PartitionKey = new PartitionKey("Error")}))
{
while (feedIterator.HasMoreResults)
{
foreach(var item in await feedIterator.ReadNextAsync())
{
Console.WriteLine(item.cost);
}
}
}
Gilt für:
GetItemQueryIterator<T>(FeedRange, QueryDefinition, String, QueryRequestOptions)
- Quelle:
- Container.cs
Diese Methode erstellt eine Abfrage für Elemente unter einem Container in einer Azure Cosmos-Datenbank mithilfe einer SQL-Anweisung mit parametrisierten Werten. Es gibt einen FeedIterator zurück. Weitere Informationen zum Vorbereiten von SQL-Anweisungen mit parametrisierten Werten finden Sie unter QueryDefinition.
public abstract Microsoft.Azure.Cosmos.FeedIterator<T> GetItemQueryIterator<T> (Microsoft.Azure.Cosmos.FeedRange feedRange, Microsoft.Azure.Cosmos.QueryDefinition queryDefinition, string continuationToken = default, Microsoft.Azure.Cosmos.QueryRequestOptions requestOptions = default);
abstract member GetItemQueryIterator : Microsoft.Azure.Cosmos.FeedRange * Microsoft.Azure.Cosmos.QueryDefinition * string * Microsoft.Azure.Cosmos.QueryRequestOptions -> Microsoft.Azure.Cosmos.FeedIterator<'T>
Public MustOverride Function GetItemQueryIterator(Of T) (feedRange As FeedRange, queryDefinition As QueryDefinition, Optional continuationToken As String = Nothing, Optional requestOptions As QueryRequestOptions = Nothing) As FeedIterator(Of T)
Typparameter
- T
Parameter
- feedRange
- FeedRange
Ein FeedRange, der von abgerufen wird GetFeedRangesAsync(CancellationToken).
- queryDefinition
- QueryDefinition
Die Cosmos SQL-Abfragedefinition.
- continuationToken
- String
(Optional) Das Fortsetzungstoken im Azure Cosmos DB-Dienst.
- requestOptions
- QueryRequestOptions
(Optional) Die Optionen für die Elementabfrageanforderung.
Gibt zurück
Ein Iterator zum Durchlaufen der Elemente.
Beispiele
Erstellen Sie eine Abfrage, um alle ToDoActivity abzurufen, die kosten größer als 9.000 für die angegebene Partition sind.
public class ToDoActivity{
public string id {get; set;}
public string status {get; set;}
public int cost {get; set;}
}
IReadOnlyList<FeedRange> feedRanges = await this.Container.GetFeedRangesAsync();
// Distribute feedRanges across multiple compute units and pass each one to a different iterator
QueryDefinition queryDefinition = new QueryDefinition("select * from ToDos t where t.cost > @expensive")
.WithParameter("@expensive", 9000);
using (FeedIterator<ToDoActivity> feedIterator = this.Container.GetItemQueryIterator<ToDoActivity>(
feedRanges[0],
queryDefinition,
null,
new QueryRequestOptions() { }))
{
while (feedIterator.HasMoreResults)
{
foreach(var item in await feedIterator.ReadNextAsync())
{
Console.WriteLine(item.cost);
}
}
}
Hinweise
Abfrage als Stream unterstützt nur Abfragen von einzelnen Partitionen
Gilt für:
GetItemQueryIterator<T>(QueryDefinition, String, QueryRequestOptions)
- Quelle:
- Container.cs
Diese Methode erstellt eine Abfrage für Elemente unter einem Container in einer Azure Cosmos-Datenbank mithilfe einer SQL-Anweisung mit parametrisierten Werten. Es gibt einen FeedIterator zurück. Weitere Informationen zum Vorbereiten von SQL-Anweisungen mit parametrisierten Werten finden Sie unter QueryDefinition.
public abstract Microsoft.Azure.Cosmos.FeedIterator<T> GetItemQueryIterator<T> (Microsoft.Azure.Cosmos.QueryDefinition queryDefinition, string continuationToken = default, Microsoft.Azure.Cosmos.QueryRequestOptions requestOptions = default);
abstract member GetItemQueryIterator : Microsoft.Azure.Cosmos.QueryDefinition * string * Microsoft.Azure.Cosmos.QueryRequestOptions -> Microsoft.Azure.Cosmos.FeedIterator<'T>
Public MustOverride Function GetItemQueryIterator(Of T) (queryDefinition As QueryDefinition, Optional continuationToken As String = Nothing, Optional requestOptions As QueryRequestOptions = Nothing) As FeedIterator(Of T)
Typparameter
- T
Parameter
- queryDefinition
- QueryDefinition
Die Cosmos SQL-Abfragedefinition.
- continuationToken
- String
(Optional) Das Fortsetzungstoken im Azure Cosmos DB-Dienst.
- requestOptions
- QueryRequestOptions
(Optional) Die Optionen für die Elementabfrageanforderung.
Gibt zurück
Ein Iterator zum Durchlaufen der Elemente.
Beispiele
Erstellen sie eine Abfrage, um alle ToDoActivity-Funktionen abzurufen, die kosten größer als 9.000
public class ToDoActivity{
public string id {get; set;}
public string status {get; set;}
public int cost {get; set;}
}
QueryDefinition queryDefinition = new QueryDefinition("select * from ToDos t where t.cost > @expensive")
.WithParameter("@expensive", 9000);
using (FeedIterator<ToDoActivity> feedIterator = this.Container.GetItemQueryIterator<ToDoActivity>(
queryDefinition,
null,
new QueryRequestOptions() { PartitionKey = new PartitionKey("Error")}))
{
while (feedIterator.HasMoreResults)
{
foreach(var item in await feedIterator.ReadNextAsync())
{
Console.WriteLine(item.cost);
}
}
}
Gilt für:
Azure SDK for .NET