Container.GetItemQueryStreamIterator Método

Definición

Sobrecargas

GetItemQueryStreamIterator(QueryDefinition, String, QueryRequestOptions)

Este método crea una consulta para los elementos de un contenedor de una base de datos de Azure Cosmos mediante una instrucción SQL con valores parametrizados. Devuelve un feedIterator. Para obtener más información sobre cómo preparar instrucciones SQL con valores con parámetros, consulte QueryDefinition.

GetItemQueryStreamIterator(String, String, QueryRequestOptions)

Este método crea una consulta para los elementos de un contenedor de una base de datos de Azure Cosmos mediante una instrucción SQL. Devuelve un feedIterator.

GetItemQueryStreamIterator(FeedRange, QueryDefinition, String, QueryRequestOptions)

Este método crea una consulta para los elementos de un contenedor de una base de datos de Azure Cosmos mediante una instrucción SQL con valores parametrizados. Devuelve un feedIterator. Para obtener más información sobre cómo preparar instrucciones SQL con valores con parámetros, consulte QueryDefinition.

GetItemQueryStreamIterator(QueryDefinition, String, QueryRequestOptions)

Este método crea una consulta para los elementos de un contenedor de una base de datos de Azure Cosmos mediante una instrucción SQL con valores parametrizados. Devuelve un feedIterator. Para obtener más información sobre cómo preparar instrucciones SQL con valores con parámetros, consulte QueryDefinition.

public abstract Microsoft.Azure.Cosmos.FeedIterator GetItemQueryStreamIterator (Microsoft.Azure.Cosmos.QueryDefinition queryDefinition, string continuationToken = default, Microsoft.Azure.Cosmos.QueryRequestOptions requestOptions = default);
abstract member GetItemQueryStreamIterator : Microsoft.Azure.Cosmos.QueryDefinition * string * Microsoft.Azure.Cosmos.QueryRequestOptions -> Microsoft.Azure.Cosmos.FeedIterator
Public MustOverride Function GetItemQueryStreamIterator (queryDefinition As QueryDefinition, Optional continuationToken As String = Nothing, Optional requestOptions As QueryRequestOptions = Nothing) As FeedIterator

Parámetros

queryDefinition
QueryDefinition

Definición de consulta de Cosmos SQL.

continuationToken
String

(Opcional) Token de continuación en el servicio Azure Cosmos DB.

requestOptions
QueryRequestOptions

(Opcional) Las opciones de la solicitud de consulta de elemento.

Devoluciones

Iterador para recorrer los elementos.

Ejemplos

Cree una consulta para obtener todas las ToDoActivity que tengan un costo superior a 9000 para la partición especificada.

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 feedIterator = this.Container.GetItemQueryStreamIterator(
    queryDefinition,
    null,
    new QueryRequestOptions() { PartitionKey = new PartitionKey("Error")}))
{
    while (feedIterator.HasMoreResults)
    {
        using (ResponseMessage response = await feedIterator.ReadNextAsync())
        {
            using (StreamReader sr = new StreamReader(response.Content))
            using (JsonTextReader jtr = new JsonTextReader(sr))
            {
                JObject result = JObject.Load(jtr);
            }
        }
    }
}

Comentarios

La consulta como secuencia solo admite consultas de partición única

Se aplica a

GetItemQueryStreamIterator(String, String, QueryRequestOptions)

Este método crea una consulta para los elementos de un contenedor de una base de datos de Azure Cosmos mediante una instrucción SQL. Devuelve un feedIterator.

public abstract Microsoft.Azure.Cosmos.FeedIterator GetItemQueryStreamIterator (string queryText = default, string continuationToken = default, Microsoft.Azure.Cosmos.QueryRequestOptions requestOptions = default);
abstract member GetItemQueryStreamIterator : string * string * Microsoft.Azure.Cosmos.QueryRequestOptions -> Microsoft.Azure.Cosmos.FeedIterator
Public MustOverride Function GetItemQueryStreamIterator (Optional queryText As String = Nothing, Optional continuationToken As String = Nothing, Optional requestOptions As QueryRequestOptions = Nothing) As FeedIterator

Parámetros

queryText
String

Texto de la consulta de Cosmos SQL.

continuationToken
String

(Opcional) Token de continuación en el servicio Azure Cosmos DB.

requestOptions
QueryRequestOptions

(Opcional) Las opciones de la solicitud de consulta de elemento.

Devoluciones

Iterador para recorrer los elementos.

Ejemplos

  1. Cree una consulta para obtener todas las ToDoActivity que tengan un costo superior a 9000 para la partición especificada.
public class ToDoActivity{
    public string id {get; set;}
    public string status {get; set;}
    public int cost {get; set;}
}

using (FeedIterator feedIterator = this.Container.GetItemQueryStreamIterator(
    "select * from ToDos t where t.cost > 9000",
    null,
    new QueryRequestOptions() { PartitionKey = new PartitionKey("Error")}))
{
    while (feedIterator.HasMoreResults)
    {
        using (ResponseMessage response = await feedIterator.ReadNextAsync())
        {
            using (StreamReader sr = new StreamReader(response.Content))
            using (JsonTextReader jtr = new JsonTextReader(sr))
            {
                JObject result = JObject.Load(jtr);
            }
        }
    }
}
  1. Crea un feedIterator para obtener todas las ToDoActivity.
public class ToDoActivity{
    public string id {get; set;}
    public string status {get; set;}
    public int cost {get; set;}
}

using (FeedIterator feedIterator = this.Container.GetItemQueryStreamIterator(
    null,
    null,
    new QueryRequestOptions() { PartitionKey = new PartitionKey("Error")}))
{
    while (feedIterator.HasMoreResults)
    {
        using (ResponseMessage response = await feedIterator.ReadNextAsync())
        {
            using (StreamReader sr = new StreamReader(response.Content))
            using (JsonTextReader jtr = new JsonTextReader(sr))
            {
                JObject result = JObject.Load(jtr);
            }
        }
    }
}

Comentarios

La consulta como secuencia solo admite consultas de partición única

Se aplica a

GetItemQueryStreamIterator(FeedRange, QueryDefinition, String, QueryRequestOptions)

Este método crea una consulta para los elementos de un contenedor de una base de datos de Azure Cosmos mediante una instrucción SQL con valores parametrizados. Devuelve un feedIterator. Para obtener más información sobre cómo preparar instrucciones SQL con valores con parámetros, consulte QueryDefinition.

public abstract Microsoft.Azure.Cosmos.FeedIterator GetItemQueryStreamIterator (Microsoft.Azure.Cosmos.FeedRange feedRange, Microsoft.Azure.Cosmos.QueryDefinition queryDefinition, string continuationToken, Microsoft.Azure.Cosmos.QueryRequestOptions requestOptions = default);
abstract member GetItemQueryStreamIterator : Microsoft.Azure.Cosmos.FeedRange * Microsoft.Azure.Cosmos.QueryDefinition * string * Microsoft.Azure.Cosmos.QueryRequestOptions -> Microsoft.Azure.Cosmos.FeedIterator
Public MustOverride Function GetItemQueryStreamIterator (feedRange As FeedRange, queryDefinition As QueryDefinition, continuationToken As String, Optional requestOptions As QueryRequestOptions = Nothing) As FeedIterator

Parámetros

feedRange
FeedRange

Un FeedRange obtenido de GetFeedRangesAsync(CancellationToken)

queryDefinition
QueryDefinition

Definición de consulta de Cosmos SQL.

continuationToken
String

(Opcional) Token de continuación en el servicio Azure Cosmos DB.

requestOptions
QueryRequestOptions

(Opcional) Las opciones de la solicitud de consulta de elemento.

Devoluciones

Iterador para recorrer los elementos.

Ejemplos

Cree una consulta para obtener todas las ToDoActivity que tengan un costo superior a 9000 para la partición especificada.

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 feedIterator = this.Container.GetItemQueryStreamIterator(
    feedRanges[0],
    queryDefinition,
    null,
    new QueryRequestOptions() { }))
{
    while (feedIterator.HasMoreResults)
    {
        using (ResponseMessage response = await feedIterator.ReadNextAsync())
        {
            using (StreamReader sr = new StreamReader(response.Content))
            using (JsonTextReader jtr = new JsonTextReader(sr))
            {
                JObject result = JObject.Load(jtr);
            }
        }
    }
}

Comentarios

La consulta como secuencia solo admite consultas de partición única

Se aplica a