Adding and Calling Methods – जब हमें हमारे ASP.NET Webpage पर किसी Code Block को बार-बार Use करने की जरूरत होती है, तो उस Code Block को बार-बार Specify करने के स्थान पर हम एक Method Create कर सकते हैं और उस Method को जरूरत के अनुसार बार-बार Call कर सकते हैं। जब हम हमारे ASP.NET Webpage पर कोई Method Create करना चाहते हैं, तब Method Definition Code को<script> Element के बीच निम्नानुसार तरीके से भी Specify करते हैं:
[code] File Name: Default.aspx <%@ Page Language="C#" %> <script runat="server"> protected string GetImageName() { return "images/BCL.png”; } protected string GetImageAlt() { return "Base Class Library”; } </script> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title><% =GetImageAlt() %></title> </head> <body> <img src="<% =GetImageName() %>" alt="<% =GetImageAlt() %>"/> </body> </html> [/code]
जिस तरह से हमने उपरोक्त Code के अनुसार script Element का प्रयोग करते हुए GetImageName() व GetImageAlt() नाम के दो Methods Define किए हैं, उसी तरह से हम हमारी जरूरत के अनुसार अन्य Methods भी Define कर सकते हैं।
जब एक बार हम अपने ASP.NET Page में किसी Method को Define कर लेते हैं, उसके बाद उस Method को अपने Webpage में Dynamic Content Generate करने के लिए जरूरत के अनुसार कहीं पर भी Call कर सकते हैं।
हम हमारे Page में जहां कहीं पर भी इन Methods को Call करना चाहते हैं, वहां इनके द्वारा Return होने वाले Result को Render करने के लिए Response.Write() Method का प्रयोग कर सकते हैं अथवा हम <% =… %> Element का भी प्रयोग कर सकते हैं, जो कि Response.Write() Method का ही Shorthand है।
उपरोक्त Code में हमने हमारे दोनों Methods को Call करने के लिए इसी Shorthand को निम्नानुसार Use किया है:
[code] <img src="<% =GetImageName() %>" alt="<% =GetImageAlt() %>"/> [/code]
जबकि हम इन Methods को निम्नानुसार Response.Write() Method द्वारा भी Call कर सकते हैं:
[code] <% Response.Write( string.Format("<img src=\"{0}\" alt=\"{1}\"/>", GetImageName(), GetImageAlt()) ); %> [/code]
उपरोक्त दोनों Statements द्वारा हम समझ सकते हैं कि <% =… %> Element को Use करना Response.Write() Method को Use करने की तुलना में कितना आसान है, क्योंकि हमें Double Quotes को Specify करने के लिए Backslash Character Constant को Use करना जरूरी नहीं होता।
जब इस Webpage को ASP.NET Server द्वारा Parse कर दिया जाता है, तो Finally Generate होने Resultant HTML Page निम्नानुसार होता है:
जबकि Web Browser में ये Render होने के बाद हमें प्राप्त होने वाला Resultant Webpage निम्नानुसार दिखाई देता है:
किसी Dynamic ASP.NET Webpage में Multiple Directives, <script> Elements व Inline Code Blocks हो सकते हैं। जब हम हमारे ASP.NET Webpage Project को Visual Studio द्वारा Run करते हैं, तो Run होने वाले ASP.NET Webpage में जितने भी Directives, script Elements व Incline Code Blocks होते हैं, वे सभी ASP.NET Server पर Parse यानी Compile होकर Execute होते हैं।
इस Parsing के दौरान Web Server द्वारा सभी Inline Code Blocks व <script> Element के बीच Enclosed Codes को ASP.NET Server द्वारा Extract करके इन Extracted Codes के आधार पर एक Temporary Class Create किया जाता है तथा Webpage पर script Element के बीच Define किए गए Methods को इस Create होने वाली Temporary Class के Methods की तरह Use कर लिया जाता है। जबकि Webpage के HTML Codes तथा Code Block के बीच Specify किए गए Statements को Output Generate करने के लिए एक अन्य अलग Method में Combined कर लिया जाता है।
Temporary Class Create करने से सम्बंधित सारा काम Visual Studio के माध्यम से ASP.NET Framework द्वारा Automatically कर लिया जाता है। इसलिए जब End User किसी ASP.NET Dynamic Webpage के लिए Web Browser के माध्यम से Request करता है, तो ASP.NET Server स्वयं एक Temporary Class Create करता है, उसे Compile करता है और उसमें Automatically Create होने वाले Methods को Call करते हुए Response HTML Page Generate करता है तथा इस Response HTML Page को फिर से उसी End User को Response के रूप में Return कर देता है, जिसने Request Perform किया था।
Return होने वाले इस Response HTML Page में Static HTML Content तो होता ही है, साथ ही Compilation के बाद Generate होने वाला Dynamic Content भी होता है। यानी ASP.NET Framework की मुख्य विशेषता यही है कि ASP.NET Webpages को अलग से Compile करने की जरूरत नहीं होती।
जब हम ASP.NET Pages को Web Browser के माध्यम से Request करते हैं अथवा ASP.NET Page को Web Browser में Reload करते हैं, तो ASP.NET Server, Modified Webpages के लिए फिर से Temporary Class Generate करता है और Generate होने वाली Temporary Class को Compile करके Compilation से Generate होने वाले Result को Response के रूप में Return कर देता है।
जबकि यदि Webpage में किसी प्रकार का Modification न किया गया हो, तो ASP.NET Server पहले से Exist Temporary Class के लिए Generated Compiled MSIL Code को Reuse करते हुए Response Return कर देता है।
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Core ASP.NET WebForms with C# in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
Core ASP.NET WebForms in Hindi | Page:647 | Format: PDF