उत्तर है: क्योंकि आप नहीं कर सकते हैं।
यह इस तरह से डिज़ाइन नहीं किया गया है। डिजाइन यह है कि वेब सेवा वर्ग का एक उदाहरण बनाया जाएगा, और फिर एक आवृत्ति विधि कहा जाएगा।
मैं केवल अनुमान लगा सकता हूं कि माइक्रोसॉफ्ट ने इसे इस तरह क्यों डिजाइन किया। निश्चित रूप से जानने के लिए, आपको उनसे पूछना होगा। विचार करें:
- स्थैतिक तरीकों को अनुमति देने के लिए कोई विशेष लाभ नहीं है। आप एक स्थिर विधि के साथ कुछ भी कर सकते हैं, आप एक उदाहरण विधि के साथ भी कर सकते हैं।
- ए
[WebService]
कक्षा कुछ मनमानी वर्ग होने के लिए नहीं है जो वेब सेवा के रूप में उपयोग की जाती है। यह एक वर्ग बनना है जिसे आपने वेब सेवा संचालन को उजागर करने के उद्देश्य से बनाया है। ऐसे में, कक्षाओं का समर्थन करने की कोई आवश्यकता नहीं है जो पहले से मौजूद हैं और पहले से ही स्थिर तरीके हैं।
- एसओएपी हैडर कार्यान्वयन आपकी कक्षा को
SoapHeader
कक्षा से प्राप्त प्रकार के एक उदाहरण फ़ील्ड को अनुमति देता है। यह फ़ील्ड आने वाले SOAP शीर्षलेख से भरा होगा और/या वापस आने के लिए SOAP शीर्षलेख होगा। आप इसे एक स्थिर क्षेत्र के साथ नहीं कर सके, क्योंकि यह प्रत्येक अनुरोध के साथ ओवरराइट किया जाएगा।
जैसा कि मैंने कहा, ये सभी अनुमान हैं। प्रश्न का सही उत्तर यह है कि, "आप ऐसा इसलिए नहीं कर सकते क्योंकि माइक्रोसॉफ्ट ने इसे डिज़ाइन किया है। अगर आप जानना चाहते हैं कि उन्होंने इसे इस तरह क्यों डिजाइन किया है, तो आपको उनसे पूछना होगा"।
Fwiw, मैं बस की जाँच की है, और यह प्रकट नहीं होता है कि WCF संचालन या तो होना करने के लिए स्थिर तरीकों अनुमति देता है।
स्रोत
2009-08-11 22:42:38
बीटीडब्ल्यू, क्या आप जानते हैं कि माइक्रोसॉफ्ट अब एएसएमएक्स वेब सेवाओं को "विरासत तकनीक" मानता है, और उन्होंने वहां बग फिक्सिंग बंद कर दी है? आपको डब्ल्यूसीएफ का उपयोग करना चाहिए। –
मुझे इसके बारे में पता नहीं था :( – Tarik
अटारीक, डब्ल्यूसीएफ इसके कार्यान्वयन में बुनियादी वेबसाइसेस का समर्थन करता है और साथ ही साथ बहुत कुछ (यह एक विशाल, पूर्ण ढांचा है)। यह बहुत चिकना है। मुझे यकीन नहीं है कि स्थिर तरीके मेरे सिर के शीर्ष पर एक डब्ल्यूसीएफ सेवा में अनुमति है। –