Freigeben über


CosmosContainer.GetItemQueryStreamIterator Methode

Definition

Überlädt

GetItemQueryStreamIterator(QueryDefinition, String, QueryRequestOptions, CancellationToken)

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.

GetItemQueryStreamIterator(String, String, QueryRequestOptions, CancellationToken)

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.

GetItemQueryStreamIterator(QueryDefinition, String, QueryRequestOptions, CancellationToken)

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 System.Collections.Generic.IAsyncEnumerable<Azure.Response> GetItemQueryStreamIterator (Azure.Cosmos.QueryDefinition queryDefinition, string continuationToken = default, Azure.Cosmos.QueryRequestOptions requestOptions = default, System.Threading.CancellationToken cancellationToken = default);
abstract member GetItemQueryStreamIterator : Azure.Cosmos.QueryDefinition * string * Azure.Cosmos.QueryRequestOptions * System.Threading.CancellationToken -> System.Collections.Generic.IAsyncEnumerable<Azure.Response>
Public MustOverride Function GetItemQueryStreamIterator (queryDefinition As QueryDefinition, Optional continuationToken As String = Nothing, Optional requestOptions As QueryRequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As IAsyncEnumerable(Of Response)

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 QueryRequestOptions

cancellationToken
CancellationToken

(Optional) CancellationToken stellt die Anforderungsabbruch dar.

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;}
}

QueryDefinition queryDefinition = new QueryDefinition("select * from ToDos t where t.cost > @expensive")
    .WithParameter("@expensive", 9000);
await foreach(Response response in this.Container.GetItemQueryStreamIterator(
                                                queryDefinition,
                                                null,
                                                new QueryRequestOptions() { PartitionKey = new PartitionKey("Error")}))
    {
        using (StreamReader sr = new StreamReader(response.Content))
        using (JsonTextReader jtr = new JsonTextReader(sr))
        {
            JObject result = JObject.Load(jtr);
        }
    }

Hinweise

Abfrage als Stream unterstützt nur Abfragen von einzelnen Partitionen

Gilt für:

GetItemQueryStreamIterator(String, String, QueryRequestOptions, CancellationToken)

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 System.Collections.Generic.IAsyncEnumerable<Azure.Response> GetItemQueryStreamIterator (string queryText = default, string continuationToken = default, Azure.Cosmos.QueryRequestOptions requestOptions = default, System.Threading.CancellationToken cancellationToken = default);
abstract member GetItemQueryStreamIterator : string * string * Azure.Cosmos.QueryRequestOptions * System.Threading.CancellationToken -> System.Collections.Generic.IAsyncEnumerable<Azure.Response>
Public MustOverride Function GetItemQueryStreamIterator (Optional queryText As String = Nothing, Optional continuationToken As String = Nothing, Optional requestOptions As QueryRequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As IAsyncEnumerable(Of Response)

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 QueryRequestOptions

cancellationToken
CancellationToken

(Optional) CancellationToken stellt die Anforderungsabbruch dar.

Gibt zurück

Ein Iterator zum Durchlaufen der Elemente.

Beispiele

  1. 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;}
}

await foreach(Response response in this.Container.GetItemQueryStreamIterator(
    "select * from ToDos t where t.cost > 9000",
    null,
    new QueryRequestOptions() { PartitionKey = new PartitionKey("Error")}))
{
        using (StreamReader sr = new StreamReader(response.Content))
        using (JsonTextReader jtr = new JsonTextReader(sr))
        {
            JObject result = JObject.Load(jtr);
        }
}

  1. Erstellt 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;}
}

await foreach(Response response in this.Container.GetItemQueryStreamIterator(
    null,
    null,
    new QueryRequestOptions() { PartitionKey = new PartitionKey("Error")}))
{
        using (StreamReader sr = new StreamReader(response.Content))
        using (JsonTextReader jtr = new JsonTextReader(sr))
        {
            JObject result = JObject.Load(jtr);
        }
}

Hinweise

Abfrage als Stream unterstützt nur Abfragen von einzelnen Partitionen

Gilt für: