Você pode recuperar vários documentos de uma coleção usando o método Find().
Exemplo
Encontre documentos usando construtores
O exemplo a seguir utiliza Builders para encontrar documentos na coleção restaurants com a cuisine "Pizza".
Selecione a aba Asynchronous ou Synchronous para ver o código correspondente.
// Creates a filter for all documents that have a "cuisine" value of "Pizza" var filter = Builders<Restaurant>.Filter .Eq(r => r.Cuisine, "Pizza"); // Asynchronously retrieves all documents that match the filter return await _restaurantsCollection.Find(filter).ToListAsync();
Para um exemplo totalmente funcional de uso do método Find() para encontrar vários documentos de forma assíncrona, consulte este exemplo para encontrar vários de forma assíncrona.
// Creates a filter for all documents that have a "cuisine" value of "Pizza" var filter = Builders<Restaurant>.Filter .Eq("cuisine", "Pizza"); // Retrieves all documents that match the filter return _restaurantsCollection.Find(filter).ToList();
Para ver um exemplo totalmente executável do uso do método Find() para encontrar vários documentos de forma síncrona, consulte este exemplo para encontrar vários de forma síncrona.
Encontre documentos usando LINQ
O exemplo a seguir usa LINQ para encontrar documentos na coleção restaurants com a cuisine "Pizza".
Selecione a aba Asynchronous ou Synchronous para ver o código correspondente.
return await _restaurantsCollection.AsQueryable() .Where(r => r.Cuisine == "Pizza").ToListAsync();
Para um exemplo totalmente funcional de uso do método Find() para encontrar vários documentos de forma assíncrona, consulte este exemplo para encontrar vários de forma assíncrona.
return _restaurantsCollection.AsQueryable() .Where(r => r.Cuisine == "Pizza").ToList();
Para ver um exemplo totalmente executável do uso do método Find() para encontrar vários documentos de forma síncrona, consulte este exemplo para encontrar vários de forma síncrona.
Localizar todos os documentos
O exemplo a seguir encontra todos os documentos na coleção restaurants.
Selecione a aba Asynchronous ou Synchronous para ver o código correspondente.
var filter = Builders<Restaurant>.Filter.Empty; return await _restaurantsCollection.Find(filter) .ToListAsync();
Para um exemplo totalmente funcional de uso do método Find() para encontrar vários documentos de forma assíncrona, consulte este exemplo para encontrar vários de forma assíncrona.
var filter = Builders<Restaurant>.Filter.Empty; return _restaurantsCollection.Find(filter) .ToList();
Para ver um exemplo totalmente executável do uso do método Find() para encontrar vários documentos de forma síncrona, consulte este exemplo para encontrar vários de forma síncrona.
Resultado esperado
A execução dos exemplos anteriores imprime os seguintes resultados:
Finding documents with builders...: Number of documents found: 1163 Finding documents with LINQ...: Number of documents found: 1163 Finding all documents...: Number of documents found: 25359
Dica
Conjuntos de dados de amostra
Esses exemplos utilizam os conjuntos de dados de amostra fornecidos pelo Atlas. O número de documentos retornados pode ser diferente dependendo dos dados da sua coleção.
Informações adicionais
Para saber mais sobre como recuperar documentos, consulte o guia Recuperar dados.
Para saber mais sobre como usar construtores, consulte Operações com construtores.
Para saber como encontrar documentos usando LINQ, consulte Sintaxe LINQ para operações de agregação.