2011-02-08 10 views
7

मैं आरईएसटी के लिए नया हूं और ऐसा लगता है कि यह बहुत आसान होना चाहिए। एक .NET ऐप में, मैं डब्ल्यूसीएफ सेवा का संदर्भ बना सकता हूं और सभी उपलब्ध प्रकारों के लिए अनुबंध मेरे लिए जेनरेट किए जाएंगे।आरईएसटी वस्तुओं के लिए अनुबंध उत्पन्न करें

अब मैं विंडोज फोन 7 ऐप में एक आरईएसटी सेवा का उपभोग करने की कोशिश कर रहा हूं। जबकि मैं अपनी कॉल कर सकता हूं और उचित प्रतिक्रिया वापस ले सकता हूं, क्या कक्षाओं को बनाने का एक आसान तरीका है कि प्रत्येक वस्तु को deserialized किया जाएगा?

मैं अपनी कॉल प्रबंधित करने के लिए RestSharp का उपयोग कर रहा हूं। मैंने देखा है कि कुछ उदाहरणों में, उपयोगकर्ता ने अपनी कक्षाएं बनाई हैं, और मैन्युअल रूप से एक्सएमएल उत्पन्न किया है। यदि संभव हो तो मैं इससे बचना चाहूंगा।

बहुत धन्यवाद!

+0

मैं आपके प्रश्न का उत्तर नहीं कर सकता, लेकिन मैं आशा आप बेहतर मार्गदर्शन प्राप्त होगा में RestSharp के लेखक को यह ट्वीट किया। –

उत्तर

8

आपकी प्रतिक्रिया मानना ​​एक्सएमएल है, आप एक्सएमएल को एक फाइल में सहेज सकते हैं, फिर स्कीमा उत्पन्न करने के लिए xsd.exe पर कॉल करें। स्कीमा पर xsd.exe पर कॉल करें और यह एक सी # कक्षा फ़ाइल उत्पन्न करेगा जिसे आप xml से seriazlize और deserialize कर सकते हैं। यहाँ कैसे XSD.exe काम करता है पर documeantion है:

http://msdn.microsoft.com/en-us/library/x6c1kb0s(v=VS.100).aspx

+0

महान विचार था, टिप के लिए धन्यवाद। – earthling

+0

धन्यवाद, यह निश्चित रूप से इसके बारे में जाने का सबसे आसान तरीका था। – earthling

+0

क्या एक रचनात्मक समाधान है। कुडोस। +1 – Stimul8d

3

आपको कक्षाओं को उत्पन्न करना होगा कि आपका प्रतिक्रिया डेटा मैप करेगा (या यदि आप .NET 4 पर हैं तो गतिशील deserialization योजना का उपयोग करें) क्योंकि आरईएसटी में एसओएपी के तरीके से एक स्कीमा परिभाषा प्रणाली शामिल नहीं है। RestSharp में, there's a T4 helper to make generating the C# classes easier। यह आपको लगभग 80% रास्ते में ले जाता है। यदि आपको इसके साथ किसी भी मदद की ज़रूरत है, तो RestSharp Google Group पर पोस्ट करें।

+0

धन्यवाद, मैं अब टी 4 की कोशिश कर रहा हूं। – earthling

+0

मेरे पास किसी अन्य व्यक्ति के साथ एक बहुत ही रोचक चर्चा थी जिसने इस दृष्टिकोण को सुझाव दिया कि इस दृष्टिकोण को स्वयं को वर्णित किया जा सकता है, क्लाइंट को पहचानने के लिए बहुत विशिष्ट रिला मूल्यों का उपयोग करके सटीक प्रकार वापस किया जाएगा। एक सेवा का समर्थन करने वाले रिले का सेट क्लाइंट द्वारा स्पष्ट रूप से दस्तावेज और समर्थित होना आवश्यक है, लेकिन कम से कम आप अपने यूआरआई को इस तरह से वापस करने के लिए युग्मित करने से बच सकते हैं। –

+1

https://github.com/johnsheehan/RestSharp/wiki/T4- हेल्पर नहीं मिला – Kiquenet

संबंधित मुद्दे