JSON (जावास्क्रिप्ट ऑब्जेक्ट नोटेशन) एक हल्का डेटा-इंटरचेंज प्रारूप है जिसका व्यापक रूप से वेब अनुप्रयोगों और APIs में उपयोग किया जाता है। C# ऑब्जेक्ट्स को JSON स्ट्रिंग्स में कुशलतापूर्वक बदलने के कई तरीके प्रदान करता है, अन्य सिस्टमों के साथ संचार को सरल बनाता है और मानव-पठनीय डेटा संग्रहण को सक्षम करता है। यह लेख इस रूपांतरण के लिए तीन लोकप्रिय विधियों का पता लगाता है, उनकी ताकत और कमजोरियों की तुलना करता है।
विषयवस्तु की तालिका
JavaScriptSerializer
का उपयोग करके ऑब्जेक्ट्स को JSON में बदलनाJsonConvert.SerializeObject
के साथ कुशल JSON क्रमबद्धताJObject.FromObject
के साथ सूक्ष्म नियंत्रण
JavaScriptSerializer
का उपयोग करके ऑब्जेक्ट्स को JSON में बदलना
System.Web.Script.Serialization.JavaScriptSerializer
क्लास JSON क्रमबद्धता के लिए एक सरल तरीका प्रदान करता है। हालाँकि, यह एक पुराना घटक है और इसमें आधुनिक पुस्तकालयों की सुविधाओं और प्रदर्शन का अभाव है। नई परियोजनाओं के लिए आम तौर पर नए विकल्पों का उपयोग करने की अनुशंसा की जाती है।
using System;
using System.Web.Script.Serialization;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
public class Example
{
public static void Main(string[] args)
{
Person person = new Person { Name = "John Doe", Age = 30 };
JavaScriptSerializer serializer = new JavaScriptSerializer();
string jsonString = serializer.Serialize(person);
Console.WriteLine(jsonString); // Output: {"Name":"John Doe","Age":30}
}
}
नोट: System.Web.Extensions
के संदर्भ की आवश्यकता है (आमतौर पर .NET Framework असेंबली के अंतर्गत मिलता है)। .NET Core और बाद के संस्करणों के लिए अनुशंसित नहीं है।
JsonConvert.SerializeObject
के साथ कुशल JSON क्रमबद्धता
Newtonsoft.Json (जिसे अक्सर Json.NET के रूप में जाना जाता है) C# के लिए एक व्यापक रूप से उपयोग किया जाने वाला, उच्च-प्रदर्शन JSON पुस्तकालय है। यह JSON क्रमबद्धता और डीसीरियलाइजेशन के लिए एक मजबूत और सुविधा-सम्पन्न समाधान प्रदान करता है। इस विधि का उपयोग करने के लिए Newtonsoft.Json
NuGet पैकेज स्थापित करें।
using Newtonsoft.Json;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
public class Example
{
public static void Main(string[] args)
{
Person person = new Person { Name = "John Doe", Age = 30 };
string jsonString = JsonConvert.SerializeObject(person);
Console.WriteLine(jsonString); // Output: {"Name":"John Doe","Age":30}
}
}
JsonConvert.SerializeObject
संक्षिप्त और कुशल है। Newtonsoft.Json शून्य, स्वरूपण और अधिक को संभालने के लिए व्यापक अनुकूलन विकल्प प्रदान करता है।
JObject.FromObject
के साथ सूक्ष्म नियंत्रण
Newtonsoft.Json लाइब्रेरी का भी हिस्सा, JObject
क्लास क्रमबद्धता से पहले JSON संरचना पर सूक्ष्म नियंत्रण प्रदान करता है। स्ट्रिंग में बदलने से पहले JSON प्रतिनिधित्व में हेरफेर करते समय यह विशेष रूप से फायदेमंद होता है।
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
public class Example
{
public static void Main(string[] args)
{
Person person = new Person { Name = "John Doe", Age = 30 };
JObject jsonObject = JObject.FromObject(person);
string jsonString = jsonObject.ToString();
Console.WriteLine(jsonString); // Output: {"Name":"John Doe","Age":30}
}
}
सरल ऑब्जेक्ट्स के लिए JsonConvert.SerializeObject
के समान, JObject.FromObject
जटिल परिदृश्यों के लिए अधिक लचीलापन प्रदान करता है। अंतिम क्रमबद्धता से पहले आप JObject
के भीतर गुणों को आसानी से जोड़, हटा या संशोधित कर सकते हैं।
निष्कर्ष: आधुनिक C# विकास के लिए, Newtonsoft.Json के JsonConvert.SerializeObject
और JObject.FromObject
विधियों की उनके प्रदर्शन, सुविधाओं और लचीलेपन के कारण दृढ़ता से अनुशंसा की जाती है। Newtonsoft.Json
NuGet पैकेज स्थापित करना याद रखें।