its_jh_stroy

[C#] C#으로 MongoDB Atlas 연결하여 사용하기 본문

C#

[C#] C#으로 MongoDB Atlas 연결하여 사용하기

_J_H_ 2024. 3. 28. 00:13

MongoDB Atlas는 MongoDB에서 제공하는 클라우드 데이터베이스 서비스이다.

이 서비스를 통해 MongoDB 데이터베이스를 클라우드 환경에서 호스팅 하여 사용할 수 있다.

배포, 백업, 복구와 같은 작업을 자동으로 처리하기 때문에 데이터베이스를 관리하는데 드는 시간과 비용을 크게 줄일 수 있다.

 

실습을 위해서는 MongoDB Atlas에 가입하여 프로젝트와 데이터베이스, 컬렉션을 만들어야 한다.

만약 연결할 위 항목이 없다면 MongoDB Atlas 사이트에 접속하여 연결할 데이터베이스와 컬렉션을 만들 수 있다.

여기서는 데이터베이스와 컬렉션이 있다고 가정하고 포스팅을 진행한다.

 

연결 문자열 확인

먼저 데이터베이스에 연결할 문자열을 확인해야 한다.

MongoDB Atlas 접속 후 프로젝트 선택하고 "Connect new" 버튼을 클릭한다.

 

버튼을 클릭하면 아래와 같은 형식으로 되어있는 연결 문자열을 확인할 수 있다.

 

위 문자열에서 <password> 부분만 수정하여 연결 문자열을 만들어준다.

만약 비밀번호가 생각나지 않으면 왼쪽 탭에서 SECURITY - Database Access에서 다시 발급받을 수 있다.

 

IP Address 등록하기

만약 새로운 IP 주소에서 MongoDB Atlas에 접속한다면 연결이 거부될 수 있다.

이런 경우 MongoDB Alas 로그인 후 나타나는 "Add Current IP Address" 버튼을 클릭하여 연결 주소를 추가한다.

 

코드 작성하기

이제 준비 과정이 끝나고 코드를 작성하면 된다.

아래 코드는 MongoDB Atlas에 접근하여 지정한 컬렉션에 값을 추가하는 예제이다.

using MongoDB.Driver;
using MongoDB.Bson;

public class Program
{
    public static void Main(string[] args)
    {
        const string connectionUri = "위에서 확인한 연결 문자열";
        var settings = MongoClientSettings.FromConnectionString(connectionUri);

        settings.ServerApi = new ServerApi(ServerApiVersion.V1);
        var client = new MongoClient(settings);

        try
        {
        	// TestDB 데이터베이스의 TestCollection 컬렉션에 데이터 INSERT
            var collection = client.GetDatabase("TestDB").GetCollection<BsonDocument>("TestCollection");
            var document = new BsonDocument()
            {
                { "name", "Kim" },
                { "age", 30 },
            };
            
            collection.InsertOne(document);
            Console.WriteLine("INSERT 성공");
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex);
        }
    }
}