किसी भी Web Application में User Input व State के रूप में दो Key Features होते हैं। User Inputs के आधार पर हम उपयोगी Web Applications Create करने की सुविधा प्राप्त करते हैं, जहां User किसी Option के आधार पर किसी Specific प्रकार के Function को Select करता है अथवा कोई Data Input करता है और हमारा ASP.NET Application उस User Input के आधार पर Conditionally Respond करता है।
किसी Traditional Application में Action व Responseका ये तरीका यानी Event Driven Programming Model एक Natural Application Development Model होता है, लेकिन Web Application में हमें इस Model को Implement करने के लिए HTML Forms पर निर्भर होना पडता है।
जबकि Input किए जाने वाले Data को Store करने तथा Web Request के Response में इसे Access करने के लिए User के State पर निर्भर होते हैं। साथ ही Web Application का State Part काफी Complex भी हो सकता है, क्योंकि Web Application जिस HTTP Technology पर आधारित होता है, वह पूरी तरह से एक Stateless Technology है।
ASP.NET Appropriate तरीके से State Management करने के लिए कई प्रकार के State Mechanism Provide करता है और हमें किसी एक ऐसे Mechanism को चुनना होता है जो कि हमारे Application की किसी Specific Requirement को पूरा करने के लिए Best Suitable हो।
Page Processing of ASP.NET Web Forms
ASP.NET Technology के माध्यम से Microsoft का एक मुख्य Goal ये Achieve करना चाहता था कि एक ऐसा Web Application Development Model Create किया जाए, जैसाकि Desktop Application Development के लिए Visual Basic Programming Language व Visual Studio IDE के माध्यम से किया गया है, ताकि Web Application Development का काम भी तेज गति से व Traditional Rich Client Application के रूप में हो सके।
चूंकि, Web Application एक Stateless HTTP Protocol पर आधारित Technology है, जिसमें Desktop Technology की तुलना में मूल रूप से निम्नानुसार कुछ Basic अन्तर हैं:
- Web Applications Stateless होते हैं, इसलिए जब एक बार किसी Webpage का HTML Code, User के Web Browser में Render हो जाता है और उसके बाद उस Webpage से सम्बंधित सभी Objects तथा सभी Client Specific Information को Server द्वारा Destroy कर दिया जाता है।
परिणामस्वरूप Web Server द्वारा User को एक बार HTTP Response Send कर देने के बाद Web Server, उस Web Client के बारे में बिल्कुल Unknown हो जाता है, जिसने Request Perform किया होता है।
यानी एक बार Request/Response Cycle पूरा हो जाने के बाद Web Client की Current State के बारे में Web Server को तथा Web Server की Current State के बारे में Web Browser को कोई जानकारी नहीं रहती और वे दोनों एक दूसरे से पूरी तरह अपरिचित हो जाते हैं।
Web Applications के Client व Server के बीच के इस प्रकार के Arrangement को ही Stateless स्थिति कहा जाता है और क्योंकि एक Web Application पूरी तरह से HTTP Protocol पर आधारित होता है, इसलिए HTTP Protocol को एक Stateless Protocol भी कहा जाता है।
- Web Applications मूल रूप से Web Server पर Execute होते हैं। जिसकी वजह से किसी भी Web Application के दो भाग हो जाते हैं। पहला भाग Client Part होता है, जो कि User को उसके Web Browser में दिखाई देता है। इसी भाग में User अपना Data Input करता है। जबकि दूसरे भाग के अन्तर्गत Web Server Part होता है, जो कि User द्वारा Client Part में Input किए गए Data को Process करने का काम करता है।
चूंकि Web Applications HTTP Protocol पर आधारित होते हैं, जो कि एक Stateless Protocol होता है, जबकि Web Dynamic Application में किसी एक Task को पूरा करने के लिए भी Client व Server के बीच एक से ज्यादा बार Network Trip Perform हो सकता है।
इसलिए Client व Server एक दूसरे कोUniquely Identify कर सकें, ताकि जिस User ने Request Perform किया है, उसी को Response भी प्राप्त हो, इस हेतु एक उपयुक्त तरीके की जरूरत होती है, जिसे ASP.NET के अन्तर्गत Postback नाम से जाना जाता है, जो किसी Particular Action के Response में Page व उसमें Supplied सभी User Data को Server पर Send करता है।
जब एक बार ASP.NET Server, User Request के माध्यम से आने वाले Data को Receive कर लेता है, उसके बाद वह स्वयं Server Side Events Trigger करता है, जिनसे हमारा Server Side Code Notify होता है और उन Events के Response में Appropriate Code Execute होकर किसी Specific Task को Perform करता है।
यानी Web Applications व Traditional Desktop Applications में मूल रूप से यही अन्तर होता हैं, कि Desktop Applications Stateless नहीं होते, इसलिए इनमें बडी ही आसानी से Event Driven Programming Model को Apply किया जा सकता है। लेकिनWeb Applications Stateless होने की वजह से इनमें Event Driven Programming Model को Apply करने के लिए हमें ASP.NET के Postback तरीके को Use करना जरूरी होता है, क्योंकि यही Postback तरीका उस समय Server को ये Identify करने की सुविधा Provide करता है कि वह जिस Page को Process कर रहा है, उस Page की Request करने वाले Client ने इस Page के अलावा किसी अन्य Page के लिए पहले भी कोई Request Perform किया है या नहीं।
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Core ASP.NET WebForms with C# in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
Core ASP.NET WebForms in Hindi | Page:647 | Format: PDF