Quick Reference

For the complete MongoDB documentation index, see www.mongodb.com/docs/llms.txt

Quick Reference

This page shows the driver syntax for several MongoDB commands and links to their related reference and API documentation.

Tip: Using LINQ

You can perform many of the operations on this page using LINQ. For more information on using LINQ with the .NET/C# Driver, see the [LINQ Fundamentals page.](https://www.mongodb.com/docs/drivers/csharp/current/aggregation/linq.md#std-label-csharp-linq

Command Syntax
Find a DocumentAPI Documentation[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/query/find.md#std-label-csharp-retrieve-find-one `var filter = Builders<Restaurant>.Filter
.Eq(restaurant => restaurant.Name, “Bagels N Buns”);

var restaurant = _restaurantsCollection.Find(filter).FirstOrDefault();

Console.WriteLine(restaurant);**Output:**{ name : “Bagels N Buns”, restaurant_id : “40363427”, ... }| | **Find a Document (Async)**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollectionExtensions.FindAsync.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/query/find.md#std-label-csharp-retrieve-find-one |var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Name, “Bagels N Buns”);

var restaurant = await _restaurantsCollection.Find(filter).FirstOrDefaultAsync();

Console.WriteLine(restaurant);**Output:**{ name : “Bagels N Buns”, restaurant_id : “40363427”, ... }| | **Find Multiple Documents**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollectionExtensions.Find.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/query/find.md#std-label-csharp-retrieve-find-multiple |var filter = Builders<Restaurant>.Filter .Eq(r => restaurant.Cuisine, “Pizza”);

var restaurants = _restaurantsCollection.Find(filter).ToList();

Console.WriteLine(restaurants);**Output:**[ { name: “Como Pizza”, cuisine: “Pizza”, ... }, { name: “New York Pizza Suprema”, cuisine: “Pizza”, ... }, ... ]| | **Find Multiple Documents (Async)**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollectionExtensions.Find.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/query/find.md#std-label-csharp-retrieve-find-multiple |var filter = Builders<Restaurant>.Filter .Eq(r => restaurant.Cuisine, “Pizza”);

var restaurants = await _restaurantsCollection.Find(filter).ToListAsync();

Console.WriteLine(restaurants);**Output:**[ { name: “Como Pizza”, cuisine: “Pizza”, ... }, { name: “New York Pizza Suprema”, cuisine: “Pizza”, ... }, ... ]| | **Insert a Document**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.InsertOne.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/insert.md#std-label-csharp-insert-guide |var insertResult = _restaurantsCollection.InsertOne(new Restaurant { Name = “Mongo's Pizza” });| | **Insert a Document (Async)**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.InsertOneAsync.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/insert.md#std-label-csharp-insert-guide |var insertResult = await _restaurantsCollection.InsertOneAsync(new Restaurant { Name = “Mongo's Pizza” });| | **Insert Multiple Documents**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.InsertMany.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/insert.md#std-label-csharp-insert-guide |_restaurantsCollection.InsertMany(new List<Restaurant> { new Restaurant { Name = “Mongo's Pizza” }, new Restaurant { Name = “Mongo Grill” } });| | **Insert Multiple Documents (Async)**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.InsertManyAsync.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/insert.md#std-label-csharp-insert-guide |await _restaurantsCollection.InsertManyAsync(new List<Restaurant> { new Restaurant { Name = “Mongo's Pizza” }, new Restaurant { Name = “Mongo Grill” } });| | **Update a Document**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.UpdateOne.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/update-one.md#std-label-csharp-update-one |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);| | **Update a Document (Async)**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.UpdateOneAsync.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/update-one.md#std-label-csharp-update-one |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);| | **Update Multiple Documents**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.UpdateMany.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/update-many.md#std-label-csharp-update-many |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);| | **Update Multiple Documents (Async)**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.UpdateManyAsync.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/update-many.md#std-label-csharp-update-many |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);| | **Update an Array in a Document**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.UpdateOne.html)[Fundamentals (Update One)](https://www.mongodb.com/docs/drivers/csharp/current/crud/update-one/arrays.md#std-label-csharp-update-one-arrays[Fundamentals (Update Many)](https://www.mongodb.com/docs/drivers/csharp/current/crud/update-many/arrays.md#std-label-csharp-update-many-arrays |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);| | **Replace a Document**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.ReplaceOne.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/replace.md#std-label-csharp-replace-operation |var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, “Pizza”);

// Find ID of first pizza restaurant var 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);| | **Replace a Document (Async)**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.ReplaceOneAsync.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/replace.md#std-label-csharp-replace-operation |var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, “Pizza”);

// Find ID of first pizza restaurant var 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);| | **Delete a Document**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.DeleteOne.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/delete.md#std-label-csharp-delete-guide |var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Name, “Ready Penny Inn”);

var deleteResult = _restaurantsCollection.DeleteOne(filter);| | **Delete a Document (Async)**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.DeleteOneAsync.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/delete.md#std-label-csharp-delete-guide |var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Name, “Ready Penny Inn”);

var deleteResult = await _restaurantsCollection.DeleteOneAsync(filter);| | **Delete Multiple Documents**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.DeleteMany.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/delete.md#std-label-csharp-delete-guide |var filter = Builders<Restaurant>.Filter .Regex(restaurant => restaurant.Name, “Green”);

var deleteResult = _restaurantsCollection.DeleteMany(filter);| | **Delete Multiple Documents (Async)**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.DeleteManyAsync.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/delete.md#std-label-csharp-delete-guide |var filter = Builders<Restaurant>.Filter .Regex(restaurant => restaurant.Name, “Green”);

var deleteResult = await _restaurantsCollection.DeleteManyAsync(filter);| | **Access Data from a Cursor Iteratively**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IAsyncCursor-1.html) |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); } }**Output:**[ Afghan Kebab House Khyber Pass ... ]| | **Count Documents**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.CountDocuments.html) |var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, “Pizza”);

var count = _restaurantsCollection.Find(filter).CountDocuments();

Console.WriteLine(count);**Output:**1163| | **List the Distinct Documents or Field Values**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoCollection-1.Distinct.html) |var filter = Builders<Restaurant>.Filter.Empty; var restaurants = _restaurantsCollection .Distinct(r => r.Cuisine, filter);

Console.WriteLine(restaurants);**Output:**[ Afghan, African, American, Armenian, Asian, ... ]| | **Limit the Number of Documents Retrieved**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IFindFluent-2.Limit.html) |var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, “Asian”); var restaurants = _restaurantsCollection.Find(filter).Limit(3).ToList();

Console.WriteLine(restaurants);**Output:**[ { name: “China Grill”, ... }, { name: “Indo Chine”, ... }, { name: “Le Colonial”, ... } ]| | **Skip Retrieved Documents**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IFindFluent-2.Skip.html) |var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, “Asian”);

var restaurants = _restaurantsCollection.Find(filter).Skip(2).ToList();

Console.WriteLine(restaurants);**Output:**[ { name: “Le Colonial”, ... }, { name: “Citrus Bar & Grill”, ... }, { name: “Mangez Avec Moi”, ... }, ... ]| | **Sort the Documents When Retrieving Them**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IFindFluentExtensions.SortBy.html) |var filter = Builders<Restaurant>.Filter .Eq(restaurant => restaurant.Cuisine, “Brazilian”);

var restaurants = _restaurantsCollection.Find(filter) .SortBy(r => r.Name).ToList();

Console.WriteLine(restaurants);**Output:**[ { name: “Barzinho”, ... }, { name: “Beco”, ... }, { name: “Beija-Flor”, ... }, ... ]| | **Project Document Fields When Retrieving Them**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.ProjectionDefinitionBuilder-1.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/crud/query/project.md#std-label-csharp-project |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);**Output:**[ { borough : “Brooklyn”, name : “Philadelphia Grille Express” } { borough : “Manhattan”, name : “Isle Of Capri Restaurant” } { borough : “Manhattan”, name : “Marchis Restaurant” } ... ]| | **Create an Index**[API Documentation](https://mongodb.github.io/mongo-csharp-driver/3.12.0/api/MongoDB.Driver/MongoDB.Driver.IMongoIndexManager-1.CreateOne.html)[Fundamentals](https://www.mongodb.com/docs/drivers/csharp/current/indexes.md#std-label-csharp-indexes |var index = Builders<Restaurant>.IndexKeys .Ascending(restaurant => restaurant.Cuisine);

_restaurantsCollection.Indexes .CreateOne(new CreateIndexModel<Restaurant>(index));` |