Docs Menu
Docs Home
/ / /
EF 핵심 제공자

빠른 시작

이 페이지의 내용

  • MongoDB 클러스터 생성
  • Atlas에서 프리 티어 클러스터 설정하기
  • 자리 표시자 업데이트
  • 환경 변수에 연결 string 추가
  • 프로젝트 설정
  • 프로젝트 만들기
  • EF Core Provider를 종속성으로 추가하기
  • 애플리케이션에서 MongoDB 클러스터 쿼리하기
  • 샘플 코드 추가
  • 샘플 데이터 쿼리
  • 다음 단계

이 가이드 에서는 EF Core Provider를 사용하여 MongoDB Atlas cluster 에 연결하는 .NET 애플리케이션 을 만드는 방법을 보여줍니다. 다른 프로그래밍 언어 를 사용하여 MongoDB 에 연결하려는 경우 공식 MongoDB 드라이버 목록을 참조하세요.

EF Core 제공자는 데이터를 .NET 객체에 매핑하여 MongoDB 클러스터의 데이터에 대한 작업을 간소화합니다.

MongoDB Atlas는 MongoDB 클러스터에서 데이터를 호스팅하는 완전 관리형 클라우드 데이터베이스 서비스입니다. 이 가이드에서는 무료(신용카드 필요 없음) 클러스터를 시작하는 방법을 보여줍니다.

아래 단계에 따라 EF Core Provider 애플리케이션 을 MongoDB Atlas cluster 에 연결합니다.

1

이 빠른 시작에 필요한 Atlas 무료 클러스터를 설정하려면 MongoDB Atlas 설정 가이드를 완료하세요.

가이드의 Atlas 단계를 완료하면 MongoDB cluster 에 새 가 배포되고,Atlas 새 데이터베이스 사용자가 생성되고, 샘플 데이터 세트가 클러스터에 로드됩니다. 또한 복사 버퍼에 다음과 유사한 연결 string 이 있습니다.

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

복사 버퍼의 연결 문자열을 원하는 텍스트 편집기의 파일에 붙여넣습니다. <username><password> 자리 표시자를 데이터베이스 사용자의 사용자 이름 및 비밀번호로 바꿉니다.

다음 단계에서 사용할 수 있도록 이 파일을 안전한 위치에 저장합니다.

3

shell 에서 다음 코드를 실행하여 이전 단계의 복사 버퍼에 있는 MongoDB 연결 string 을 환경 변수에 저장합니다. 연결 string 을 환경 변수에 저장하면 자격 증명이 소스 코드와 별도로 유지됩니다. 이렇게 구분하면 코드를 공유할 때 자격 증명이 노출될 가능성이 줄어듭니다.

export MONGODB_URI='<your connection string>'

중요

연결 string 의 <username><password> 섹션을 데이터베이스 사용자의 사용자 이름 및 비밀번호로 바꿔야 합니다.

1

다음과 같이 새 디렉토리를 만들고 dotnet new 명령을 사용하여 프로젝트를 초기화합니다.

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

dotnet add 명령을 사용하여 프로젝트 에 EF Core Provider를 종속성으로 추가합니다.

dotnet add package MongoDB.EntityFrameworkCore
1

프로젝트의 기본 디렉토리에서 Program.cs 파일을 엽니다. 다음 샘플 코드를 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/ko-kr/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

shell 에서 다음 명령을 실행합니다. 샘플 데이터 세트에서 영화 '백 투 더 퓨처'의 줄거리가 출력되어야 합니다.

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.

출력이 비어 있으면 샘플 데이터 세트를 클러스터에 로드했는지 확인하세요.

이 단계를 완료하면 MongoDB cluster 에 연결하고 샘플 데이터에 대해 쿼리를 실행하고 결과를 출력하는 Entity Framework 애플리케이션이 작동해야 합니다.

빠른 참조에서 EF Core Provider를 사용하여 일반적인 작업을 수행하는 방법을 알아보세요.

돌아가기

MongoDB 엔티티 프레임워크 핵심 제공자