2009-06-23 21 views
12

में कनवर्ट करना मुझे एएसएमएक्स के बजाय डब्ल्यूसीएफ का उपयोग करने के लिए हमारी वेब सेवाओं को अपग्रेड करना होगा। यदि वेब सेवाओं के हस्ताक्षर समान रहते हैं, तो मौजूदा क्लाइंट जो पहले ही एएसएमएक्स सेवा को कॉल करते हैं, उन्हें अपने अंत में कुछ भी बदलना होगा? क्या अभी भी डब्ल्यूसीएफ का उपयोग करने के लिए है लेकिन उन्हें कुछ भी बदलने के लिए मजबूर नहीं है?एएसएमएक्स को डब्ल्यूसीएफ वेब सेवा

+2

क्या आप समझा सकते हैं कि आपको अपग्रेड करने की आवश्यकता क्यों है? – redsquare

उत्तर

12

विकल्प 1:

  1. वर्तमान ASMX के डबल्यूएसडीएल का उपयोग करना, svcutil.exe उत्पन्न इंटरफ़ेस का उपयोग कर
  2. ले लो ग्राहक पैदा करते हैं और इस इंटरफेस

    आउटपुट के आधार पर एक WCF सेवा बनाने: एक बुनियादी Wttp बाइंडिंग के साथ कॉन्फ़िगर किया गया नया डब्ल्यूसीएफ एंडपॉइंट। ग्राहकों को उस URL को अपडेट करने की आवश्यकता है जिस पर वे संदेश भेज रहे हैं।

विकल्प 2:

  1. अपने ASMX कोड refactor। सभी तर्क को एक अलग डीएलएल में ले जाएं।
  2. एक डब्ल्यूसीएफ सेवा बनाएं और रिफैक्टर डीएलएल में तर्क का उपयोग करें।

    आउटपुट: 2 अंतिमबिंदुओं, ASMX के लिए एक और WCF

8

के लिए एक दूसरे से आप अपने नए WCF सेवा के लिए BasicHttpBinding उपयोग करें, और एक ही संदेश संरचना के साथ एक ही तरीके लागू करते हैं तो मौजूदा कॉल किया जाना चाहिए इस हिस्से में किसी भी बदलाव के बिना इस नई डब्ल्यूसीएफ सेवा में कॉल करने में सक्षम।

कुछ संभावित संगतता समस्या प्राप्त करने के लिए AspNetCompatibilityRequirements विशेषता भी है - MSDN documentation पर इसे देखें।

मार्क

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