MongoDB.Driver C# (.NET) पूर्ण गाइड: उदाहरण और उपयोग

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

MongoDB.Driver C# (.NET) के लिए: पूर्ण गाइड

1. यह क्या है और इसकी आवश्यकता क्यों है

MongoDB.Driver .NET प्लेटफॉर्म (C#, F#, VB.NET) पर बने एप्लिकेशन को MongoDB डेटाबेस से जोड़ने के लिए आधिकारिक, हाई-परफॉर्मेंस और एसिंक्रोनस ड्राइवर है। यह सभी CRUD (Create, Read, Update, Delete) ऑपरेशन, इंडेक्स मैनेजमेंट, डेटा एग्रीगेशन, ट्रांजेक्शन और रियल-टाइम चेंज स्ट्रीम (Change Streams) के लिए पूरा टूलसेट प्रदान करता है। यह ड्राइवर MongoDB Inc. द्वारा विकसित और मेंटेन किया जाता है, जो MongoDB के नवीनतम वर्जन के साथ पूर्ण संगतता और सभी आधुनिक सुविधाओं को सुनिश्चित करता है।

इस लाइब्रेरी की आवश्यकता क्यों है? यदि आप कोई .NET एप्लिकेशन (ASP.NET Core वेब सर्विस, WPF डेस्कटॉप ऐप, कंसोल यूटिलिटी या माइक्रोसर्विस) बना रहे हैं और MongoDB को मुख्य या सहायक डेटा स्टोरेज के रूप में उपयोग करना चाहते हैं, तो आपको कनेक्शन स्थापित करने और डेटा एक्सचेंज के लिए इस ड्राइवर की आवश्यकता होगी। MongoDB.Driver MongoDB के वायर प्रोटोकॉल (Wire Protocol) की जटिलता को एब्सट्रैक्ट करता है और डेवलपर को एक सुविधाजनक, स्ट्रिक्टली टाइप किया गया API प्रदान करता है। आप C# ऑब्जेक्ट के साथ काम करते हैं, और ड्राइवर स्वचालित रूप से उन्हें BSON (MongoDB का बाइनरी फॉर्मेट) में सीरियलाइज़ करता है और वापस लाता है। इससे आप लो-लेवल इंटरैक्शन की जटिलताओं में जाए बिना संक्षिप्त, सुरक्षित और परफॉर्मेंट कोड लिख सकते हैं।

लाइब्रेरी दो मुख्य कार्य पद्धतियों को सपोर्ट करती है: सिंक्रोनस और एसिंक्रोनस (अनुशंसित)। एसिंक्रोनस मेथड (Async सफिक्स के साथ) एक्जीक्यूशन थ्रेड को ब्लॉक नहीं करते, जो स्केलेबल सर्वर एप्लिकेशन के लिए महत्वपूर्ण है। ड्राइवर में LINQ प्रोवाइडर भी शामिल है, जो LINQ क्वेरी को MongoDB एग्रीगेशन पाइपलाइन सिंटैक्स में ट्रांसलेट करता है, जिससे कोड और भी डिक्लेरेटिव और .NET डेवलपर्स के लिए परिचित हो जाता है।

2. इंस्टॉलेशन

इंस्टॉलेशन NuGet पैकेज मैनेजर के माध्यम से किया जाता है। पैकेज मैनेजर कंसोल (Package Manager Console) या .NET CLI टर्मिनल में निम्नलिखित कमांड में से कोई एक चलाएँ।

.NET CLI के माध्यम से (अनुशंसित):

dotnet add package MongoDB.Driver

पैकेज मैनेजर कंसोल के माध्यम से (Visual Studio):

Install-Package MongoDB.Driver

Entity Framework Core का उपयोग करने वाले प्रोजेक्ट के लिए (वैकल्पिक):

एक अलग प्रोवाइडर MongoDB.EntityFrameworkCore मौजूद है, लेकिन अधिकांश कार्यों के लिए मुख्य ड्राइवर ही पर्याप्त है।

इंस्टॉलेशन के बाद, प्रोजेक्ट फ़ाइल (.csproj) में एक रेफरेंस जुड़ जाएगा:

<PackageReference Include="MongoDB.Driver" Version="2.25.0" />

3. त्वरित शुरुआत — न्यूनतम कार्यशील उदाहरण

नीचे दिया गया कोड स्थानीय MongoDB इंस्टेंस से कनेक्ट होता है, "testdb" डेटाबेस और "users" कलेक्शन प्राप्त करता है, एक डॉक्यूमेंट इन्सर्ट करता है और कंसोल पर उसका ID प्रिंट करता है।

using MongoDB.Bson;
using MongoDB.Driver;

// 1. क्लाइंट बनाएँ (सर्वर से कनेक्शन)
var client = new MongoClient("mongodb://localhost:27017");

// 2. डेटाबेस प्राप्त करें (यदि मौजूद नहीं है तो ऑटोमैटिक बन जाता है)
var database = client.GetDatabase("testdb");

// 3. कलेक्शन प्राप्त करें (पहली इन्सर्ट पर ऑटोमैटिक बन जाता है)
var collection = database.GetCollection<BsonDocument>("users");

// 4. डॉक्यूमेंट बनाएँ
var document = new BsonDocument
{
    { "name", "राहुल" },
    { "age", 30 },
    { "city", "मुंबई" }
};

// 5. डॉक्यूमेंट इन्सर्ट करें (एसिंक्रोनस)
await collection.InsertOneAsync(document);

// 6. जनरेटेड ID प्रिंट करें
Console.WriteLine($"डॉक्यूमेंट ID के साथ इन्सर्ट हुआ: {document["_id"]}");

// 7. कलेक्शन से सभी डॉक्यूमेंट पढ़ें
var allUsers = await collection.Find(new BsonDocument()).ToListAsync();
foreach (var user in allUsers)
{
    Console.WriteLine(user.ToJson());
}

4. मुख्य तरीके/फंक्शन/क्लास

4.1 Mon

अनुशंसाएँ