Docs Menu
Docs Home
/ /

FAQ

Esta página contiene preguntas frecuentes y sus respuestas correspondientes.

Tip

Si no puede encontrar una respuesta a su problema en esta página, consulte la Página deproblemas y ayuda para conocer los próximos pasos y más recursos.

El El controlador MongoDB.NET/C# es una biblioteca que expone la funcionalidad de MongoDB directamente e incluye un proveedor LINQ con proyecciones, operaciones de grupo y mapeo flexible. El controlador incluye características como las siguientes:

  • Transacciones

  • Operaciones a granel

  • Consultas LINQ

  • Operaciones que modifican directamente la base de datos

  • Operaciones de agregación

  • Mapeo personalizado

El proveedor de EF Core le permite usar Entity Framework Core de Microsoft con MongoDB en sus aplicaciones .NET/C#. EF Core admite el seguimiento de cambios, las operaciones LINQ basadas en entidades y el modelado habitual para los usuarios de Entity Framework Core. El proveedor incluye características como las siguientes:

  • Seguimiento inteligente de objetos

  • Operaciones LINQ basadas en entidades

  • Modelado y mapeo de Entity Framework con la API fluida

  • Actualizaciones automáticas de la base de datos a través del seguimiento de cambios

Puede crear índices con el proveedor EF Core llamando al HasIndex() en el OnModelCreating() método de la DbContext clase. Para obtener más información sobre cómo crear índices con el proveedor principal de EF, consulte la guía de índices.

Dado que el proveedor EF Core está construido sobre el driver .NET/C#, también puede gestionar índices en la aplicación utilizando directamente el driver .NET/C#. Para utilizar métodos de driver en la aplicación de proveedor EF Core, llámelos en el MongoClient utilizado para configurar su DbContext.

El siguiente ejemplo crea índices en la colección movies mediante métodos del controlador .NET/C#:

using MongoDB.Driver;
var client = new MongoClient("<connection string>");
var database = client.GetDatabase("sample_mflix");
await CreateIndexesAsync(database);
async Task CreateIndexesAsync(IMongoDatabase database)
{
var moviesIndex = new CreateIndexModel<Movie>(Builders<Movie>.IndexKeys
.Ascending(x => x.Title)
.Ascending(x => x.Genres));
await database.GetCollection<Movie>("movies")
.Indexes.CreateOneAsync(moviesIndex);
}

Para aprender más sobre la creación de índices usando el driver, consulta la Guía de índices en la documentación del controlador MongoDB .NET/C#.

Puede usar el controlador .NET/C# directamente en su aplicación EF Core Provider llamando a los métodos del controlador en el MongoClient usado para configurar su DbContext. EF Core Provider se basa en el controlador .NET/C#, por lo que puede usar todas sus funciones en su aplicación. Por ejemplo, puede usar el controlador para realizar una consulta de búsqueda Atlas, como se muestra en el siguiente ejemplo:

// Client used to set up your DbContext
var client = new MongoClient("<connection string>");
var clientDB = client.GetDatabase("sample_guides");
var collection = clientDB.GetCollection<Planet>("planets");
var searchResult = collection.Aggregate()
.Search(Builders<Planet>.Search.Equals(p => p.hasRings, true))
.ToList();
foreach (var p in searchResult)
{
Console.WriteLine(p.name);
}

Para obtener más información sobre cómo realizar consultas de búsqueda de Atlas con el controlador .NET/C#, consulte la guía de búsqueda de Atlas en la documentación del controlador.

Volver

Problemas y Ayuda

En esta página