Docs Menu
Docs Home
/ /

Inicio rápido

Esta guía le muestra cómo crear una aplicación .NET que utiliza el proveedor de EF Core para conectarse a un clúster de MongoDB Atlas. Si prefiere conectarse a MongoDB con otro lenguaje de programación, consulte nuestra Lista de controladores oficiales de MongoDB.

El proveedor de EF Core simplifica las operaciones con datos en clústeres de MongoDB al mapear los datos a objetos .NET.

MongoDB Atlas es un servicio de base de datos en la nube completamente gestionada que aloja los datos en clústeres de MongoDB. En esta guía, mostramos cómo comenzar con un clúster gratuito (no se necesita tarjeta de crédito).

Sigue estos pasos para conectar tu aplicación del proveedor de EF Core a un clúster de MongoDB Atlas.

1

Para configurar el clúster gratuito de Atlas requerido para este Quick Start, se debe completar la guía Configuración de MongoDB Atlas.

Después de completar los pasos en la guía de Atlas, tienes un nuevo clúster de MongoDB implementado en Atlas, un nuevo usuario de base de datos y conjuntos de datos de muestra cargados en tu clúster. También tienes una cadena de conexión similar a la siguiente en el búfer de copia:

"mongodb+srv://<username>:<password>@cluster0.abc.mongodb.net/?retryWrites=true&w=majority"
2

Pegue la cadena de conexión del búfer de copia en un archivo de su editor de texto preferido. Reemplace el <username> y <password> marcadores de posición con el nombre de usuario y la contraseña de su usuario de base de datos.

Guarda este archivo en una ubicación segura para usarlo en el siguiente paso.

3

Ejecuta el siguiente código en tu shell para guardar la cadena de conexión de MongoDB en tu búfer de copia del paso anterior a una variable de entorno. Almacenar tu cadena de conexión en una variable de entorno mantiene tus credenciales separadas de tu código fuente. Esta separación hace que sea menos probable que expongas tus credenciales al compartir tu código.

export MONGODB_URI='<your connection string>'

Importante

Es importante asegurarse de reemplazar las secciones <username> y <password> de la cadena de conexión con el nombre de usuario y la contraseña del usuario de la base de datos.

1

Crea un directorio nuevo y utiliza el comando dotnet new para inicializar tu proyecto de la siguiente manera:

mkdir entity-quickstart
cd entity-quickstart
dotnet new console
2

Utiliza el comando dotnet add para agregar el proveedor de EF Core a tu proyecto como una dependencia.

dotnet add package MongoDB.EntityFrameworkCore
1

Abre el archivo llamado Program.cs en el directorio base de tu proyecto. Copia el siguiente código de muestra en Program.cs:

using Microsoft.EntityFrameworkCore;
using MongoDB.Bson;
using MongoDB.Bson.Serialization.Attributes;
using MongoDB.Driver;
using MongoDB.EntityFrameworkCore.Extensions;
var connectionString = Environment.GetEnvironmentVariable("MONGODB_URI");
if (connectionString == null)
{
Console.WriteLine("You must set your 'MONGODB_URI' environment variable. To learn how to set it, see https://www.mongodb.com/es/docs/drivers/csharp/current/quick-start/#set-your-connection-string");
Environment.Exit(0);
}
var client = new MongoClient(connectionString);
var db = MflixDbContext.Create(client.GetDatabase("sample_mflix"));
var movie = db.Movies.First(m => m.Title == "Back to the Future");
Console.WriteLine(movie.Plot);
public class MflixDbContext : DbContext
{
public DbSet<Movie> Movies { get; init; }
public static MflixDbContext Create(IMongoDatabase database) =>
new(new DbContextOptionsBuilder<MflixDbContext>()
.UseMongoDB(database.Client, database.DatabaseNamespace.DatabaseName)
.Options);
public MflixDbContext(DbContextOptions options)
: base(options)
{
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<Movie>().ToCollection("movies");
}
}
public class Movie
{
[BsonId]
public ObjectId _id { get; set; }
[BsonElement("title")]
public string Title { get; set; }
[BsonElement("rated")]
public string Rated { get; set; }
[BsonElement("plot")]
public string Plot { get; set; }
}
2

Ejecuta el siguiente comando en tu shell. Debería imprimir la trama de la película “Regreso al futuro” del conjunto de datos de muestra:

dotnet run entity-quickstart.csproj
A young man is accidentally sent 30 years into the past in a time-traveling
DeLorean invented by his friend, Dr. Emmett Brown, and must make sure his
high-school-age parents unite in order to save his own existence.

Tip

Si la salida está vacía, es importante asegurarse de haber cargado los conjuntos de datos de muestra en el clúster.

Después de completar estos pasos, deberías tener una aplicación de Entity Framework en funcionamiento que se conecte a tu clúster de MongoDB, ejecute un query sobre los datos de muestra e imprima el resultado.

Aprende a usar el proveedor de EF Core para realizar operaciones comunes en la referencia rápida.

Volver

Overview