2010-06-14 7 views
7

मैं एक PHP डेवलपर हूं जिसे एएसपीनेट परियोजनाओं पर काम करना है और मैं सोच रहा हूं कि प्रत्येक पृष्ठ को किसी रूप में क्यों लपेटा जाता है। यह सिर्फ मुझे समझ में नहीं आता है।एएसपीनेट पृष्ठ को एक रूप में क्यों लपेटता है?

इसके अलावा सभी छिपे हुए इनपुट फ़ील्ड विशेष रूप से "राज्य देखें" के साथ क्या है।

+2

विशिष्ट होना चाहिए कि यह एएसपीनेट वेब फॉर्म है, न कि एएसपी.नेट एमवीसी जो PHP वातावरण की तरह है जिसका आप उपयोग करते हैं – MikeJ

उत्तर

11

एएसपी.Net इसे बनाने की कोशिश करता है ताकि प्रोग्रामर यह दिखा सकें कि वेब एक राज्यव्यापी मंच है, और यह डेस्कटॉप एप्लिकेशन की तरह व्यवहार करता है। व्यूस्टेट मूल रूप से पृष्ठ के राज्य का एक धारावाहिक ब्लॉक उत्पन्न होता है जब इसे उत्पन्न किया गया था। जब पृष्ठ वापस पोस्ट हो जाता है तो सर्वर साइड मॉडल को व्यूस्टेट में मानों में प्रारंभ किया जाता है, और उसके बाद पोस्ट फॉर्म से नए मान लागू होते हैं।

एक सभ्य एएसपी.Net प्रोग्रामर बनने का हिस्सा व्यूस्टेट का उपयोग करने के लिए सीख रहा है और नहीं, क्योंकि डिफ़ॉल्ट इसे हर जगह उपयोग करना है जो डाउनलोड किए गए पृष्ठ में बहुत अधिक ब्लोट का कारण बनता है।

2

एएसपी.नेट वेबफॉर्म इंजन स्टेटलेस HTTP पर एक स्टेटस एब्स्ट्रक्शन बनाता है।

मुख्य वस्तु एक सर्वर पृष्ठ है। सर्वर की तरफ संसाधित होने वाली अग्नि घटनाओं को नियंत्रित करता है। नियंत्रण अनुरोधों के बीच अपने राज्यों (आमतौर पर, इनपुट मूल्य) को बनाए रखते हैं।

जब भी आप सर्वर नियंत्रण पर क्लिक करते हैं, तो "पोस्टबैक" अनुरोध सर्वर पर वापस भेजा जाता है। व्यूस्टेट में वास्तव में सर्वर को बताते हुए डेटा होता है कि घटना ने किस नियंत्रण को निकाल दिया था। यही कारण है कि हमेशा एक रूप है (और किसी और रूपों की अनुमति नहीं है)।

3

एएसपी.नेट (एएसपीएक्स पेज) में सब कुछ पोस्टिंग डेटा से काम करता है।

इसका मतलब यह है कि सर्वर-साइड एक्शन के साथ वेब पेज पर जो कुछ भी आप डालते हैं, वह "पोस्ट बैक" स्वयं ही होगा। पोस्ट बैक में "अभी क्या हुआ" जैसी कुछ जानकारी है और कुछ जानकारी जो वेब पेज को राज्य को बनाए रखने में मदद करती है (कौन से वेब पेज परंपरागत रूप से नहीं करते हैं)। दृश्य राज्य राज्य को बनाए रखने के उस कार्य का हिस्सा है।

यदि आप एएसपीएक्स पेजों को वेब-पेजों को फ़ॉर्म-स्टाइल स्टेटफुलर एप्लिकेशन में बदलने की कोशिश नहीं करते हैं, तो आप एएसपी.नेट एमवीसी फ्रेमवर्क को आजमा सकते हैं, जो वेब को इरादे के रूप में काम करने देता है!

5

प्रत्येक एएसपी.नेट पृष्ठ <form> तत्व में लपेटा गया है क्योंकि संपूर्ण ढांचा POST कमांड के आसपास घूमता है।

एएसपी.नेट 'वेब नियंत्रण' प्रदान करता है जो HTML तत्वों (और कुछ मामलों में, तत्वों के समूह) के ऑब्जेक्ट-ओरिएंटेड एब्स्ट्रैक्शन प्रदान करता है - आपके सर्वर-साइड कोड में आप वेब नियंत्रणों पर विभिन्न घटनाओं के लिए आदेश संलग्न कर सकते हैं (के लिए उदाहरण, Button.OnClick, TextBox.OnChanged) - ढांचा छुपा क्षेत्रों के संयोजन और उत्पन्न जेस्क्रिप्ट का उपयोग करके इन तारों को तारित करता है। जेनरेट की गई जावास्क्रिप्ट आमतौर पर एक छिपे हुए फ़ील्ड को सेट करने के लिए कुछ मान सेट करती है (उदाहरण के लिए) जिस पर नियंत्रण ने पोस्ट और कमांड तर्क (यदि लागू हो) ट्रिगर किया, तो फॉर्म सबमिट करता है।

ViewState क्लाइंट राज्य को क्रमबद्ध करने के लिए ढांचे द्वारा उपयोग की जाने वाली तकनीक है। यह सर्वर पर कम स्मृति पदचिह्न के लिए बड़े HTML पेलोड का व्यापार करने के लिए सत्र का उपयोग करने का एक विकल्प है।

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