2010-10-19 16 views
10

नियमित aspx पृष्ठ पर, मेरे पास Page_Init, Page_Unload इत्यादि जैसी घटनाएं हैं, जो in a well-defined order होती हैं।एएसपी.नेट वेबसाइट सेवा अनुरोध जीवनसाथी क्या है?

मेरे पास asmx पृष्ठ [WebMethod()] एस प्रदान करता है। क्या इसी तरह की घटनाएं मौजूद हैं? विशेष रूप से, कुछ घटनाएं जो मुझे कुछ डेटा शुरू करने की अनुमति देती हैं (जैसे Page_Load) और कुछ साफ-सफाई करें (जैसे Page_Unload) बेहद उपयोगी होगी।

(जहां तक ​​मैं कह सकता हूं, asmx कोड-बैक क्लास का कन्स्ट्रक्टर प्रत्येक वेबमाइंड अनुरोध पर कॉल किया जाता है, यानी, प्रत्येक वेबमाइंड अनुरोध के लिए एक नया उदाहरण बनाया गया है, लेकिन यह केवल एक अवलोकन है और नहीं मुझे कुछ दस्तावेज मिला है ...)

+0

मैं इंगित करता हूं कि यह काफी कार्यान्वयन-निर्भर जानकारी है, विशेष रूप से इस बात पर विचार करते हुए कि एएसएमएक्स को डब्लूसीएफ द्वारा प्रतिस्थापित किया गया है, जिसमें पूरी तरह से अलग जीवन चक्र है। –

उत्तर

9

हाँ - ओटावियो सही है, एएसएमएक्स वेब सेवाओं के लिए कोई पेज इवेंट नहीं है, क्योंकि वे पृष्ठ से प्राप्त नहीं होते हैं।

हालांकि, अनुरोध नियमित ASP.NET processing pipeline का पालन करता है।

प्रक्रिया में एक बिंदु है जहां प्रासंगिक IHttpHandler निष्पादित किया गया है। यह एक पृष्ठ, एक सामान्य HTTP हैंडलर, या एक वेब सेवा हो सकता है।

यह वह जगह है जहां वेब सेवा अनुरोध निष्पादन होता है।

तो, यह वास्तव में इस पर निर्भर करता है कि आप यहां क्या करने की कोशिश कर रहे हैं। सीटीओआर को पूर्व-अनुरोध निष्पादन के लिए एक अच्छा हुक-इन प्रदान करना चाहिए। यदि आप पहले भी कुछ खोज रहे हैं, तो आपको शायद ग्लोबल.एक्सएक्स कार्यक्रम में शामिल होने की आवश्यकता होगी।

1

asmx ऑब्जेक्ट्स System.Web.Services.WebService से पृष्ठ से नहीं निकाले गए हैं, इसलिए उनके पास ऐसी घटनाएं नहीं हैं जिन्हें आप ढूंढ रहे हैं।

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