WCF service in Silverlight will not recognize both custom class and method -
मेरे पास निम्न वेब सेवा है:
[ServiceContract (नामस्थान = "")] [एएसपीएननेट संगततायमानताएं (आवश्यकताएँ मोड = एएसपीएनईटी संसमर्थतायूरतामोड। अनुमति दी गई है)] सार्वजनिक श्रेणी के मायस्टस्टैलास {[ऑपरेशनकैन्ट्रैक्ट] पब्लिक लिस्ट & lt; TrackInfo & gt; GetAll (स्ट्रिंग गानानाम) {नई सूची & lt; tracksInfo & gt;; }}
मैंने उद्देश्य से सरल बनाया है Anyhows, जब TrackInfo सेवा संदर्भ के बाहर एक कक्षा में घोषित किया गया है, दूसरे छोर पर सेवा (अर्थ चांदी के क्षेत्र में) केवल TrackInfo वर्ग पहचानता है, लेकिन GetAll विधि नहीं मिल सकता है जब मैं संदर्भ के अंदर ट्रैकइन्फो कक्षा को डालने का प्रयास करता हूं, लेकिन MyTestClass के बाहर एक ही समस्या होती है, तब
मैंने एक डाटाकंट्रैक्ट के रूप में सीरिज के अंदर ट्रैकिनफो वर्ग को लगाया है:
[DataContract ] सार्वजनिक वर्ग TrackInfo {सार्वजनिक Int आईडी (प्राप्त करें; सेट; } // किसी स्ट्रीम के बजाय सार्वजनिक सूची & lt; छवि & gt; फ़ुल साइज़नोट्स {प्राप्त करें; सेट; } सार्वजनिक छवि TrackNotes {get; सेट; } सार्वजनिक स्ट्रीम मिडीफ़ाइल {प्राप्त करें; सेट; }}
अब सेवा GetAll फ़ंक्शन को पहचानती है, लेकिन trackinfo के गुणों को नहीं पहचानती।
डेटा अनुबंध एक "ऑप्ट इन" तकनीक हैं, जो एएसएमएक्स सेवाओं में एक्सएमएल सीरियलआइज़र के विपरीत है।
डेटा कॉन्ट्रैक्ट्स को आपके पास [डेटामेम्बर] एट्रिब्यूट के साथ सजाए गए गुणों की आवश्यकता होती है।
[DataContract] सार्वजनिक वर्ग TrackInfo {[DataMember] सार्वजनिक int आईडी {get; सेट; } // इसके बजाय एक स्ट्रीम का उपयोग करने पर विचार करना चाहिए [डेटामेम्बर] सार्वजनिक सूची & lt; छवि & gt; फ़ुल साइज़नोट्स {प्राप्त करें; सेट; } [डेटामेम्बर] सार्वजनिक छवि ट्रैकनोट्स {get; सेट; } [डेटामेम्बर] पब्लिक स्ट्रीम मिडीफ़ाइल {get; सेट; }}
Comments
Post a Comment