Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.

Referência rápida

Esta página mostra a sintaxe do driver para vários comandos do MongoDB e links para sua referência relacionada e documentação da API.

Dica

Usando LINQ

Você pode realizar muitas das operações nesta página usando LINQ. Para obter mais informações sobre como usar o LINQ com o driver .NET/C#, consulte a página Fundamentos do LINQ.

Comando
Sintaxe

Encontrar um documento

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Name, "Bagels N Buns"); var restaurant = _restaurantsCollection.Find(filter).FirstOrDefault(); Console.WriteLine(restaurant);
{ name : "Bagels N Buns", restaurant_id : "40363427", ... }

Encontrar um documento (assíncrono)

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Name, "Bagels N Buns"); var restaurant = await _restaurantsCollection.Find(filter).FirstOrDefaultAsync(); Console.WriteLine(restaurant);
{ name : "Bagels N Buns", restaurant_id : "40363427", ... }

Localizar vários documentos

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(r => restaurant.Cuisine, "Pizza"); var restaurants = _restaurantsCollection.Find(filter).ToList(); Console.WriteLine(restaurants);
[ { name: "Como Pizza", cuisine: "Pizza", ... }, { name: "New York Pizza Suprema", cuisine: "Pizza", ... }, ...]

Encontrar vários documentos (assíncrono)

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(r => restaurant.Cuisine, "Pizza"); var restaurants = await _restaurantsCollection.Find(filter).ToListAsync(); Console.WriteLine(restaurants);
[ { name: "Como Pizza", cuisine: "Pizza", ... }, { name: "New York Pizza Suprema", cuisine: "Pizza", ... }, ...]
var insertResult = _restaurantsCollection.InsertOne(new Restaurant { Name = "Mongo's Pizza" });

Inserir um documento (assíncrono)

Documentação da API
Fundamentals

var insertResult = await _restaurantsCollection.InsertOneAsync(new Restaurant { Name = "Mongo's Pizza" });

Insira vários documentos

Documentação da API
Fundamentals

_restaurantsCollection.InsertMany(new List<Restaurant>{ new Restaurant { Name = "Mongo's Pizza" }, new Restaurant { Name = "Mongo Grill" }});

Inserção de vários documentos (assíncrono)

Documentação da API
Fundamentals

await _restaurantsCollection.InsertManyAsync(new List<Restaurant>{ new Restaurant { Name = "Mongo's Pizza" }, new Restaurant { Name = "Mongo Grill" }});

Atualizar um documento

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Name, "Bagels N Buns"); var update = Builders<Restaurant>.Update .Set(restaurant => restaurant.Name, "2 Bagels 2 Buns"); var result = _restaurantsCollection.UpdateOne(filter, update);

Atualizar um documento (assíncrono)

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Name, "Bagels N Buns"); var update = Builders<Restaurant>.Update .Set(restaurant => restaurant.Name, "2 Bagels 2 Buns"); var updateResult = await _restaurantsCollection.UpdateOneAsync(filter, update);

Atualizar vários documentos

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, "Pizza"); var update = Builders<Restaurant>.Update .Set(restaurant => restaurant.Cuisine, "Pasta and breadsticks"); var result = _restaurantsCollection.UpdateMany(filter, update);

Atualize vários documentos (assíncrono)

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, "Pizza"); var update = Builders<Restaurant>.Update .Set(restaurant => restaurant.Cuisine, "Pasta and breadsticks"); var updateResult = await _restaurantsCollection.UpdateManyAsync(filter, update);
var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Name, "Bagels N Buns"); var update = Builders<Restaurant>.Update .Push(restaurant => restaurant.Grades, new GradeEntry { Date = DateTime.Now.ToUniversalTime(), Grade = "A", Score = 10 }); var result = _restaurantsCollection.UpdateOne(filter, update);

Substituir um documento

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, "Pizza"); // Find ID of first pizza restaurantvar oldPizzaRestaurant = _restaurantsCollection.Find(filter).First();var oldId = oldPizzaRestaurant.Id; Restaurant newPizzaRestaurant = new(){ Id = oldId, Name = "Mongo's Pizza", Cuisine = "Pizza", Address = new Address { Building = "123", Coordinates = [123, 456], Street = "Pizza St", ZipCode = "10003" }, Borough = "Manhattan",}; var replaceResult = _restaurantsCollection.ReplaceOne(filter, newPizzaRestaurant);

Substituir um documento (assíncrono)

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, "Pizza"); // Find ID of first pizza restaurantvar oldPizzaRestaurant = _restaurantsCollection.Find(filter).First();var oldId = oldPizzaRestaurant.Id; Restaurant newPizzaRestaurant = new(){ Id = oldId, Name = "Mongo's Pizza", Cuisine = "Pizza", Address = new Address { Building = "123", Coordinates = [12.3, 45.6], Street = "Pizza St", ZipCode = "10003" }, Borough = "Manhattan",}; var replaceResult = await _restaurantsCollection.ReplaceOneAsync(filter, newPizzaRestaurant);
var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Name, "Ready Penny Inn"); var deleteResult = _restaurantsCollection.DeleteOne(filter);

Excluir um documento (assíncrono)

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Name, "Ready Penny Inn"); var deleteResult = await _restaurantsCollection.DeleteOneAsync(filter);

Excluir vários documentos

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Regex(restaurant => restaurant.Name, "Green"); var deleteResult = _restaurantsCollection.DeleteMany(filter);

Excluir vários documentos (assíncrono)

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Regex(restaurant => restaurant.Name, "Green"); var deleteResult = await _restaurantsCollection.DeleteManyAsync(filter);

Acesse dados de um cursor iterativamente

Documentação da API

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, "Afghan)"; var cursor = _restaurantsCollection.Find(filter).ToCursor();while (cursor.MoveNext()){ foreach (var r in cursor.Current) { Console.WriteLine(r.Name); }}
[ Afghan Kebab House Khyber Pass ...]

Contagem de documentos

Documentação da API

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, "Pizza"); var count = _restaurantsCollection.Find(filter).CountDocuments(); Console.WriteLine(count);
1163

Liste os documentos distintos ou valores de campo

Documentação da API

var filter = Builders<Restaurant>.Filter.Empty;var restaurants = _restaurantsCollection .Distinct(r => r.Cuisine, filter); Console.WriteLine(restaurants);
[ Afghan, African, American, Armenian, Asian, ... ]

Limite o número de documentos retirados

Documentação da API

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, "Asian");var restaurants = _restaurantsCollection.Find(filter).Limit(3).ToList(); Console.WriteLine(restaurants);
[ { name: "China Grill", ... }, { name: "Indo Chine", ... }, { name: "Le Colonial", ... }]

Ignorar documentos recuperados

Documentação da API

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, "Asian"); var restaurants = _restaurantsCollection.Find(filter).Skip(2).ToList(); Console.WriteLine(restaurants);
[ { name: "Le Colonial", ... }, { name: "Citrus Bar & Grill", ... }, { name: "Mangez Avec Moi", ... }, ...]

Classificar os documentos ao recuperá-los

Documentação da API

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, "Brazilian"); var restaurants = _restaurantsCollection.Find(filter) .SortBy(r => r.Name).ToList(); Console.WriteLine(restaurants);
[ { name: "Barzinho", ... }, { name: "Beco", ... }, { name: "Beija-Flor", ... }, ...]

Campos de documento do projeto ao recuperá-los

Documentação da API
Fundamentals

var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, "Italian"); var projection = Builders<Restaurant>.Projection .Include(restaurant => restaurant.Name) .Include(restaurant => restaurant.Borough) .Exclude(restaurant => restaurant.Id); var restaurants = _restaurantsCollection.Find(filter).Project(projection).ToList(); Console.WriteLine(restaurants);
[ { borough : "Brooklyn", name : "Philadelphia Grille Express" } { borough : "Manhattan", name : "Isle Of Capri Restaurant" } { borough : "Manhattan", name : "Marchis Restaurant" } ...]
var index = Builders<Restaurant>.IndexKeys .Ascending(restaurant => restaurant.Cuisine); _restaurantsCollection.Indexes .CreateOne(new CreateIndexModel<Restaurant>(index));
Avalie esta página