से कनवर्टिंग प्रकार मुझे यकीन है कि यह एक बहुत ही आम समस्या होनी चाहिए। मेरे पास दो डब्ल्यूसीएफ सेवाएं हैं, जो मूल रूप से एक बड़ी सेवा के लिए मानक पहुंच और व्यवस्थापक पहुंच का पर्दाफाश करती हैं।डब्ल्यूसीएफ सेवा
प्रत्येक सेवा पर एक समान विधि Foo
है। Foo
टाइप TemplateInfo
का तर्क लेता है जो मेरी सेवा में परिभाषित किया गया है।
मेरे क्लाइंट पर मेरे पास Client
और AdminClient
का संदर्भ है। Client.Foo(TemplateInfo)
Client.TemplateInfo
की अपेक्षा करता है जबकि AdminClient.Foo(TemplateInfo)
AdminClient.TemplateInfo
की अपेक्षा करता है। मुझे पता है कि एक बार सेवा पहुंचने के बाद Client.TemplateInfo
और AdminClient.TemplateInfo
एक ही बात है।
मैं यह पता लगाने की कोशिश कर रहा हूं कि टेम्पलेटइन्फो को तुरंत कैसे चालू करें और/या क्लाइंट और व्यवस्थापक विधियों दोनों के साथ काम करने के लिए इसे कास्ट करें। इस ऑब्जेक्ट को बनाने के लिए कोड की एक सभ्य राशि है इसलिए मैं उम्मीद कर रहा था कि प्रत्येक प्रकार के लिए इसे डुप्लिकेट न करें।
साझा असेंबली में प्रकार परिभाषित किए गए हैं और मैं अपने प्रॉक्सी में "पुन: उपयोग प्रकार" हूं। लेकिन मुझे दो अलग-अलग प्रकार मिलते हैं क्योंकि मेरे पास दो सेवा संदर्भ हैं।
कुछ ऐसा करना अच्छा होगा (AdminClient) TemplateInfo, लेकिन शायद मैं प्रकारों को बदलने के लिए क्लोन विधि तैयार करूंगा।
धन्यवाद, आखिरी नोट मेरे परिदृश्य में महत्वपूर्ण है। मैं पहले से ही दो सेवाओं में इसका संदर्भ दे रहा हूं। – earthling
@ जॉन, क्या आप यहां सहायता कर सकते हैं http://stackoverflow.com/questions/43506726/wcf-deserializing-choosing-type-in-depends-on-some-field-once-and-for-all-de कृपया? –