6
द्वारा

मैं एक WCF सेवा लिख ​​रहा हूँ और कुछ कस्टम विन्यास तत्वों (जैसे कस्टम ConfigurationSection और ConnectionStringSettings) का पर्दाफाश करने के लिए इतना है कि मैं सेवा के विन्यास संशोधित कर सकते हैं चाहता हूँ धारावाहिक नहीं किया जा सकता।नेट आधार प्रकार WCF

अपने कस्टम विन्यास तत्वों में से एक System.Configuration.ConfigurationElementCollection से विरासत। जब मैं अपनी डब्ल्यूसीएफ सेवा शुरू करने का प्रयास करता हूं तो मुझे निम्न त्रुटि संदेश मिलता है ...

टाइप करें 'सिस्टम। कॉन्फ़िगरेशन। कॉन्फ़िगरेशन एलिमेंट कोलेक्शन' को क्रमबद्ध नहीं किया जा सकता है। DataContractAttribute विशेषता के साथ इसे चिह्नित करने पर विचार करें, और अपने सभी सदस्यों को चिह्नित करना जिन्हें आप DataMemberAttribute विशेषता के साथ क्रमबद्ध करना चाहते हैं।

क्या इस प्रकार के लिए डेटाकंट्रैक्ट को लागू करने का कोई तरीका है? मेरे पास विरासत श्रेणी [DataContract] विशेषता के साथ चिह्नित है।

उत्तर

1

ठीक है, अंत में मुझे अपने समाधान को पुन: आर्किटेक्ट करना पड़ा। मैंने SerializableConfigurationSection सबसे अधिक फायदेमंद पाया। यह एंटरप्राइज़ लाइब्रेरी के पैटर्न और प्रथाओं में है। तो डब्ल्यूसीएफ के माध्यम से अपने कस्टम कॉन्फ़िगरेशन अनुभागों को पारित करने की कोशिश करने के बजाय, मैं क्रमशः seralization/deserialization निष्पादित करता हूं और एक स्ट्रिंग के रूप में डब्ल्यूसीएफ के माध्यम से कॉन्फ़िगरेशन अनुभाग पास करता हूं।

4

आज इस मुद्दे को अभी हिट करें। यह उलझन में था क्योंकि समस्या मशीन से मशीन पर एक परियोजना को स्थानांतरित करने के लिए आया था। यह लेख प्रासंगिक लगता है:

http://blogs.msdn.com/youssefm/archive/2009/08/10/serializing-plain-old-clr-objects-poco-types-with-datacontractserializer.aspx

लिंक रोट के मामले में संक्षेप में, इस मुद्दे क्रम 3.5 में उभरने और रनटाइम 3.5 एसपी 1 में दूर जाने के लिए लगता है।

+0

मेरे पास वही था। आपको पीओसीओ प्रकारों के ऑटो क्रमबद्ध करने के लिए 3.5 एसपी 1 की आवश्यकता है। –

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