ASP.NET WebForms Model को Microsoft द्वारा Launch किए जाने का मुख्य कारण Web Applications Development के लिए एक RAD (Rapid Application Development) Environment Provide करना था। क्योंकि ASP.NET Web Forms Model, उस समय के VB Programmers के लिए आसानी से Web Development करने हेतु काफी उपयोगी था और RAD के लिए ASP.NET में उस समय जिन Features को Add किया गया था, वे Features आज के एक Web Programming Model के आधार की तरह काम करते हैं और।
इस Web Forms Programming Model के अन्तर्गत मूलत: Page Postbacks, View State व Server Controls के रूप में तीन महत्वपूर्ण Features को विकसित किया गया था। WebForms Model के इन तीनों महत्वपूर्ण Pillars की Internal Working को हम निम्न चित्रानुसार बेहतर तरीके से Represent कर सकते हैं:
उपरोक्त चित्र के अनुसार Web-Browser से Web-Server पर Send किया गया प्रत्येक HTTP Request जो कि ASP.NET Runtime पर Run होता है, Postback Event की Processing के लिए कई Stages पर Flow होता है और Postback Event ही वह मुख्य Action होता है, जिसके लिए User, Web Server पर Request Fire करता है।
WebForms Model के अन्तर्गत जब User कोई HTTP Request Send करता है, तो ASP.NET Runtime उस Request को Process करने के लिए सबसे पहले उस Request से सभी जरूरी Data को Extract करता है। इस Data के अन्तर्गत ही उस Requested Webpage के सभी Web Controls की State Information भी होती है, जो कि Finally Produce होने वाले HTML Page पर Render होते हैं।
Postback को Follow करते हुए HTML Response को Web Browser में Render होने के लिए Arrange किया जाता है, जिसके अन्तर्गत Web Control की Modify की गई नई State भी होती है, जो कि अगली HTTP Request में Use होने वाली होती हैं।
सभी Server-Side Steps को Page Controller Pattern के अनुसार Wrap किया गया होता है। इसके अनुसार प्रत्येक HTTP Request को एक Page Controller Entity द्वारा Process किया जाता है जो कि पूरी तरह से एक Final HTML Page Generate करने के लिए ही जिम्मेदार होता है।
इस Page Controller Entity को एक Class के रूप में Implement किया जाता है, जो कि कुछ Specific Events Fire करता है और इन Events को Use करते हुए Developers अपने स्वयं के Custom Codes Execute करने के लिए Event Handlers Create करते हैं। यानी Developers, Event Handlers के माध्यम से इन Events का उपयोग ASP.NET Runtime पर Processing के लिए आने वाली HTTP Request के साथ Interact करने तथा Generate होने वाले Final Output को Change व Manipulate करने के लिए करते हैं।
Web Forms की कार्यप्रणाली को और बेहतर तरीके से समझने तथा इसके Launch होते ही इतना Successful होने के रहस्य को जानने के लिए हम एक Code Snippet देखते हैं, जो कि निम्नानुसार है:
void btnDisplayMsg_Click(Object sender, EventArgs args) { lblMessage.Text = txtUserMessage.Text; }
इस Code को हमारे Webpage की WebForm Class में Define किया गया है, जो कि हमारे WebPage को Finally Create करने के लिए जिम्मेदार होता है। इस Class में btnDisplayMsg_Click() उस Event Handler को Represent कर रहा है, जो कि Postback Event को Handle करता है।
जब User इस btnDisplayMsg ID वाले Button पर Click करता है, तो Web Server पर एक HTTP Request Send होता है, जो कि उस Code को Execute करता है, जिसे Event Handler Method की Body में लिखा गया है और हम देख सकते हैं कि ये Event Handler Exactly उसी तरह से लिखा गया है, जिस तरह से 1990 के दशक में Event Driven Programming Model पर आधारित Desktop Application Develop किया जाता था।
इस Event Handler Method की Body में हम किसी अन्य Webpage के किसी भी Element को Directly Access कर सकते हैं और उसके Elements की State को ठीक उसी प्रकार से Set कर सकते हैं, जैसे कि हम User Interface के माध्यम से किसी Page के विभिन्न Web Controls की Values को Manipulate कर रहे हों। हालांकि इस Event Handler में लिखा गया Program Logic, Web Server पर ASP.NET Runtime पर Run होता है, इसलिए Client-Side HTML व Server Environment के बीच Interaction को Stateful बनाए रखने के लिए हमें कुछ Extra काम करने जरूरी होते हैं। (How ASP.NET Web Forms Work?)
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Core ASP.NET WebForms with C# in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
Core ASP.NET WebForms in Hindi | Page:647 | Format: PDF