c# - Creating a class for JSON deserialization -


निम्नलिखित JSON पर विचार करें:

  {"code": 2, "body": {"डायनामिक-कुंजी": {"कुंजी 1": "वैल 1", "कुंजी 2": "वैल 2"}}}  

निम्नलिखित क्लास संरचना को परिभाषित करना:

  [DataContract] वर्ग JsonResponse {[DataMember] सार्वजनिक स्ट्रिंग कोड {get; सेट; } [डेटामेम्बर] सार्वजनिक जेसन रीस्पॉन्स बॉडी बॉडी {प्राप्त; सेट; }} [डेटा कॉन्ट्रैक्ट] वर्ग जेसन रीस्पॉन्सबॉडी [[डेटामेम्बर (नाम = "डायनेमिक-कुंजी")] सार्वजनिक डायनामिक किडाडेटा डेटा {प्राप्त; सेट; }} [डेटाकांट्रक्ट] वर्ग डायनैमिककीडेटा {[डेटामेम्बर] सार्वजनिक स्ट्रिंग कुंजी 1 {प्राप्त करें; सेट; } [डेटामेम्बर] सार्वजनिक स्ट्रिंग कुंजी 2 {प्राप्त; सेट; }}  

मैं दिए गए JSON को निम्न कोड के साथ deserialize कर सकता हूँ:

  DataContractJsonSerializer serializer = नया डेटा कंट्रैक्टजसन सेरियलाइज़र (टाइपफ (जेसनईरेस्पॉन्स)); JsonResponse प्रतिक्रिया डेटा = serializer.ReadObject (responsestream) JsonResponse के रूप में;  

हालांकि मेरे मामले में "डायनामिक-कुंजी" ज्ञात नहीं है और उपयोगकर्ता इनपुट वैल्यू द्वारा परिभाषित किया गया है। इस तरह की JSON परिभाषा को संभालने का सही तरीका क्या है?

विचार:

JSON एक तृतीय पक्ष एपी का है, इसलिए इसे बदलना नहीं है एक विकल्प।

मेरे मामले में मुझे डायनामिक-कुंजी नाम की परवाह नहीं है, इसलिए यदि हमेशा एक सामान्य नाम को मैप करने का कोई विकल्प होता है तो यह काम करेगा।

> अग्रिम धन्यवाद।

क्या आपको निश्चित रूप से WCF का उपयोग करने की आवश्यकता है? अन्यथा मैं देख रहा हूँ की सिफारिश की

जैसे कई एक्सटेंसिबिलिटी मैकेनिज़्म हैं

Comments

Popular posts from this blog

c# - How to capture HTTP packet with SharpPcap -

php - Multiple Select with Explode: only returns the word "Array" -

jquery - SimpleModal Confirm fails to submit form -