MC, 2025
Ilustracja do artykułu: Jak połączyć C# z MongoDB? Oto Kompletny Przewodnik!

Jak połączyć C# z MongoDB? Oto Kompletny Przewodnik!

MongoDB to jedna z najpopularniejszych baz danych NoSQL, która zyskała ogromne uznanie dzięki swojej elastyczności i skalowalności. C# natomiast jest jednym z najbardziej wszechstronnych języków programowania, który wspiera wiele technologii, w tym baz danych. Jeśli chcesz dowiedzieć się, jak połączyć C# z MongoDB i zacząć korzystać z tego połączenia w swojej aplikacji, to dobrze trafiłeś! W tym artykule przeprowadzę Cię przez wszystkie kroki, od instalacji bibliotek po praktyczne przykłady użycia MongoDB w C#.

Co to jest MongoDB?

MongoDB to dokumentowa baza danych typu NoSQL, która przechowuje dane w formacie JSON (a dokładniej BSON - Binary JSON). Oznacza to, że dane są przechowywane w postaci dokumentów, które mogą mieć różną strukturę. MongoDB różni się od tradycyjnych baz danych SQL, które używają tabel i relacji, co sprawia, że jest idealnym rozwiązaniem dla aplikacji, które muszą obsługiwać duże zbiory danych w sposób elastyczny i skalowalny.

Co sprawia, że MongoDB jest tak popularne? Oto kilka kluczowych cech:

  • Brak ściśle określonej struktury danych (dokumenty mogą mieć różne pola)
  • Wysoka skalowalność, zarówno w poziomie, jak i w pionie
  • Łatwość w przechowywaniu i przetwarzaniu danych JSON
  • Wsparcie dla agregacji, co pozwala na szybkie i elastyczne przetwarzanie danych

Jak zainstalować MongoDB w C#?

Aby rozpocząć korzystanie z MongoDB w C#, musisz najpierw zainstalować odpowiednią bibliotekę, która umożliwi komunikację z bazą danych. MongoDB dostarcza oficjalny pakiet NuGet o nazwie MongoDB.Driver, który pozwala na łatwą integrację MongoDB z aplikacjami napisanymi w C#.

Aby zainstalować ten pakiet, otwórz Visual Studio, stwórz nowy projekt i przejdź do menedżera pakietów NuGet. Wyszukaj MongoDB.Driver i zainstaluj najnowszą wersję. Alternatywnie, możesz użyć poniższego polecenia w konsoli NuGet:

Install-Package MongoDB.Driver

Po zainstalowaniu pakietu, będziesz gotowy, aby zacząć korzystać z MongoDB w swoim projekcie C#!

Podstawowe połączenie z MongoDB w C#

Przed rozpoczęciem korzystania z MongoDB, musisz nawiązać połączenie z bazą danych. W tym celu używa się obiektu MongoClient, który umożliwia nawiązanie połączenia z serwerem MongoDB. Poniżej znajdziesz przykład, który demonstruje, jak to zrobić:

using MongoDB.Driver;

class Program
{
    static void Main(string[] args)
    {
        // Połączenie z MongoDB
        var client = new MongoClient("mongodb://localhost:27017");
        var database = client.GetDatabase("TestDatabase");
        var collection = database.GetCollection("TestCollection");

        Console.WriteLine("Połączenie z MongoDB udane!");
    }
}

W powyższym przykładzie tworzymy obiekt MongoClient, który łączy się z serwerem MongoDB, a następnie uzyskujemy dostęp do bazy danych TestDatabase oraz kolekcji TestCollection. Pamiętaj, że adres mongodb://localhost:27017 wskazuje na lokalny serwer MongoDB, który działa na domyślnym porcie 27017.

Dodawanie dokumentów do MongoDB

Po połączeniu z bazą danych możemy zacząć dodawać dane. MongoDB przechowuje dane w postaci dokumentów BSON (Binary JSON). Dokumenty mogą mieć dowolną strukturę, a każdy dokument jest identyfikowany przez unikalny identyfikator (_id).

Poniżej znajdziesz przykład, jak dodać nowy dokument do kolekcji MongoDB:

using MongoDB.Bson;
using MongoDB.Driver;

class Program
{
    static void Main(string[] args)
    {
        var client = new MongoClient("mongodb://localhost:27017");
        var database = client.GetDatabase("TestDatabase");
        var collection = database.GetCollection("TestCollection");

        var document = new BsonDocument
        {
            { "name", "John Doe" },
            { "age", 30 },
            { "city", "Warsaw" }
        };

        collection.InsertOne(document);
        Console.WriteLine("Dokument dodany!");
    }
}

W powyższym przykładzie tworzymy dokument w formacie BSON, który zawiera trzy pola: "name", "age" oraz "city". Następnie dodajemy ten dokument do kolekcji za pomocą metody InsertOne. Dokument zostanie automatycznie zapisany w bazie danych MongoDB.

Odczytywanie dokumentów z MongoDB

Oczywiście, MongoDB pozwala także na odczytywanie danych. Poniżej znajdziesz przykład, jak odczytać dokumenty z kolekcji:

using MongoDB.Bson;
using MongoDB.Driver;
using System;

class Program
{
    static void Main(string[] args)
    {
        var client = new MongoClient("mongodb://localhost:27017");
        var database = client.GetDatabase("TestDatabase");
        var collection = database.GetCollection("TestCollection");

        var filter = Builders.Filter.Eq("name", "John Doe");
        var result = collection.Find(filter).FirstOrDefault();

        Console.WriteLine(result.ToString());
    }
}

W tym przykładzie używamy filtra, aby znaleźć dokument, który ma pole name równe "John Doe". Wynik wyszukiwania jest zwracany przez metodę Find, a pierwszy pasujący dokument jest wyświetlany za pomocą FirstOrDefault.

Aktualizacja danych w MongoDB

MongoDB pozwala także na aktualizowanie danych. Oto przykład, jak zaktualizować dokument w kolekcji:

using MongoDB.Bson;
using MongoDB.Driver;
using System;

class Program
{
    static void Main(string[] args)
    {
        var client = new MongoClient("mongodb://localhost:27017");
        var database = client.GetDatabase("TestDatabase");
        var collection = database.GetCollection("TestCollection");

        var filter = Builders.Filter.Eq("name", "John Doe");
        var update = Builders.Update.Set("city", "Krakow");

        collection.UpdateOne(filter, update);
        Console.WriteLine("Dokument zaktualizowany!");
    }
}

W tym przykładzie aktualizujemy dokument, który ma pole name równe "John Doe". Używamy metody UpdateOne, aby zaktualizować pole city na wartość "Krakow".

Usuwanie dokumentów z MongoDB

Na koniec, MongoDB pozwala także na usuwanie dokumentów. Poniżej przykład, jak usunąć dokument:

using MongoDB.Bson;
using MongoDB.Driver;
using System;

class Program
{
    static void Main(string[] args)
    {
        var client = new MongoClient("mongodb://localhost:27017");
        var database = client.GetDatabase("TestDatabase");
        var collection = database.GetCollection("TestCollection");

        var filter = Builders.Filter.Eq("name", "John Doe");
        collection.DeleteOne(filter);

        Console.WriteLine("Dokument usunięty!");
    }
}

W powyższym przykładzie usuwamy dokument, który ma pole name równe "John Doe", używając metody DeleteOne.

Podsumowanie

Integracja MongoDB z C# jest łatwa i pozwala na szybkie tworzenie aplikacji, które korzystają z bazy danych NoSQL. Dzięki MongoDB, możesz przechowywać dane w elastyczny sposób, a biblioteka MongoDB.Driver dla C# daje Ci wszystkie narzędzia do łatwego łączenia się z bazą danych i manipulowania danymi. W tym artykule zaprezentowałem Ci podstawowe operacje: połączenie z bazą danych, dodawanie, odczytywanie, aktualizowanie i usuwanie dokumentów. Teraz możesz zacząć budować swoje aplikacje z wykorzystaniem MongoDB i C#!

Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!

Imię:
Treść: