जवाबों:
Page
एक विशेष केस हैंडलर है।
सामान्य वेब हैंडलर ( *.ashx
, एक्सटेंशन आधारित प्रोसेसर) सभी वेब हैंडलर के लिए डिफॉल्ट HTTP हैंडलर है, जिसमें यूआई नहीं है और जिसमें @WebHandler
निर्देश शामिल है ।
ASP.NET पेज हैंडलर ( *.aspx
) सभी ASP.NET पेज के लिए डिफ़ॉल्ट HTTP हैंडलर है।
अंतर्निहित HTTP संचालकों में वेब सेवा हैंडलर ( *.asmx
) और ट्रेस हैंडलर ( trace.axd
) भी हैं
MSDN कहता है :
ASP.NET HTTP हैंडलर एक प्रक्रिया है (जिसे अक्सर "समापन बिंदु" के रूप में संदर्भित किया जाता है) जो ASP.NET वेब अनुप्रयोग में किए गए अनुरोध के जवाब में चलता है। सबसे आम हैंडलर एक ASP.NET पेज हैंडलर है जो .aspx फाइलों को प्रोसेस करता है। जब उपयोगकर्ता एक .aspx फ़ाइल का अनुरोध करते हैं, तो अनुरोध पृष्ठ हैंडलर के माध्यम से पृष्ठ द्वारा संसाधित किया जाता है।
नीचे दी गई छवि यह दर्शाती है:
अपने दूसरे प्रश्न के रूप में:
क्या ashx aspx से अधिक कनेक्शन को संभालता है?
ऐसा मत सोचो (लेकिन यकीन है कि, कम से कम से कम नहीं)।
HttpHandler
एक भाग है जिसे अनुभाग से पहले निष्पादित किया जा रहा है Page
।
.aspx
एक पूर्ण जीवन चक्र (का उपयोग करता है Init
, Load
, PreRender
) और बटन क्लिक आदि का जवाब कर सकते हैं
एक .ashx
बस एक ही है ProcessRequest
विधि।
.aspx एक प्रदत्त पृष्ठ है। यदि आपको एक दृश्य की आवश्यकता है, तो .aspx पृष्ठ का उपयोग करें। यदि आप सभी की जरूरत बैकएंड कार्यक्षमता है, लेकिन एक ही दृश्य पर रहना होगा, एक .ashx पृष्ठ का उपयोग करें।
उन लोगों के लिए, जिन्होंने पहले नोडज में प्रोग्राम किया है, विशेष रूप से एक्सप्रेसजेस का उपयोग करते हुए। मैं .ashx
एक मिडलवेयर के रूप में सोचता हूं जो next
फ़ंक्शन को कॉल करता है। जबकि .aspx
वह नियंत्रक होगा जो वास्तव में या तो अनुरोध के प्रति प्रतिक्रिया करता है res.redirect
, res.send
या जो भी हो।