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

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

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

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

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

Newtonsoft.Json (जिसे अक्सर Json.NET भी कहा जाता है) .NET इकोसिस्टम में JSON फॉर्मेट के साथ काम करने के लिए सबसे लोकप्रिय और शक्तिशाली लाइब्रेरी है। यह C# डेवलपर्स को ऑब्जेक्ट्स को JSON स्ट्रिंग में बदलने (सीरियलाइज़ेशन) और JSON स्ट्रिंग को वापस C# ऑब्जेक्ट्स में बदलने (डीसीरियलाइज़ेशन) के लिए हाई-परफॉरमेंस और लचीले टूल्स प्रदान करता है।

इसकी आवश्यकता क्यों है? JSON (JavaScript Object Notation) वेब सर्वर और क्लाइंट के बीच डेटा एक्सचेंज, कॉन्फ़िगरेशन फ़ाइलों, API और डेटाबेस (जैसे NoSQL) में डी-फैक्टो स्टैंडर्ड बन गया है। Newtonsoft.Json आपको ये सुविधाएँ देता है:

  • किसी भी REST API के साथ आसानी से इंटीग्रेट करें — JSON फॉर्मेट में डेटा भेजें और प्राप्त करें।
  • कॉन्फ़िगरेशन के साथ काम करें — JSON सेटिंग्स फ़ाइलों को पढ़ें और लिखें।
  • जटिल संरचनाओं को मैनेज करें — नेस्टेड ऑब्जेक्ट्स, ऐरे, डिक्शनरी और डायनामिक टाइप्स को सपोर्ट करता है।
  • सीरियलाइज़ेशन प्रक्रिया को कस्टमाइज़ करें — एट्रीब्यूट्स और सेटिंग्स (कॉन्ट्रैक्ट्स, प्रॉपर्टी इग्नोर करना, डेट फॉर्मेटिंग आदि) के साथ।

Newtonsoft.Json की स्थापना (इंस्टॉलेशन)

Python (जहाँ pip install का उपयोग होता है) या Node.js (npm install) के विपरीत, .NET इकोसिस्टम में NuGet पैकेज मैनेजर का उपयोग किया जाता है। लाइब्रेरी को स्थापित करने के कई तरीके हैं:

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

सर्विस → NuGet पैकेज मैनेजर → पैकेज मैनेजर कंसोल खोलें और यह कमांड चलाएँ:

Install-Package Newtonsoft.Json

तरीका 2: .NET CLI (क्रॉस-प्लेटफ़ॉर्म) के माध्यम से

यदि आप .NET Core / .NET 5+ का उपयोग कर रहे हैं और टर्मिनल से काम कर रहे हैं, तो यह चलाएँ:

dotnet add package Newtonsoft.Json

तरीका 3: Visual Studio इंटरफ़ेस के माध्यम से

प्रोजेक्ट पर राइट-क्लिक करें → "NuGet पैकेज प्रबंधित करें" → "ब्राउज़" टैब में Newtonsoft.Json खोजें और "इंस्टॉल करें" पर क्लिक करें।

स्थापना के बाद, कोड फ़ाइल की शुरुआत में using Newtonsoft.Json; डायरेक्टिव जोड़ें।

त्वरित शुरुआत: कोड उदाहरण

आइए एक सरल उदाहरण के साथ देखें कि लाइब्रेरी कैसे काम करती है। मान लीजिए हमारे पास एक Person क्लास है:

using System;
using Newtonsoft.Json;

public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
    public string Email { get; set; }
}

class Program
{
    static void Main()
    {
        // 1. ऑब्जेक्ट बनाएँ
        var person = new Person
        {
            Name = "अन्ना",
            Age = 30,
            Email = "anna@example.com"
        };

        // 2. सीरियलाइज़ेशन: ऑब्जेक्ट -> JSON
        string json = JsonConvert.SerializeObject(person, Formatting.Indented);
        Console.WriteLine("सीरियलाइज़्ड JSON:");
        Console.WriteLine(json);

        // 3. डीसीरियलाइज़ेशन: JSON -> ऑब्जेक्ट
        string jsonInput = @"{'Name':'राहुल','Age':25,'Email':'rahul@example.com'}";
        Person deserializedPerson = JsonConvert.DeserializeObject<Person>(jsonInput);
        Console.WriteLine($"\nडीसीरियलाइज़्ड ऑब्जेक्ट: {deserializedPerson.Name}, {deserializedPerson.Age}");
    }
}

आउटपुट:

सीरियलाइज़्ड JSON:
{
  "Name": "अन्ना",
  "Age": 30,
  "Email": "anna@example.com"
}

डीसीरियलाइज़्ड ऑब्जेक्ट: राहुल, 25

Newtonsoft.Json के मुख्य मेथड और फंक्शन

नीचे लाइब्रेरी के 10 प्रमुख मेथड/फंक्शन विस्तृत विवरण और उदाहरणों के साथ दिए गए हैं।

1. JsonConvert.SerializeObject()

यह क्या करता है: .NET ऑब्जेक्ट को JSON स्ट्रिंग में बदलता है।

पैरामीटर:

  • value (object) — सीरियलाइज़ करने के लिए ऑब्जेक्ट।
  • formatting (Nullable<Formatting>) — आउटपुट फॉर्मेटिंग (None — एक लाइन में, Indented — इंडेंटेशन के साथ)।

अनुशंसाएँ