ஏஎஸ்பி.நெட்: திருத்தங்களுக்கு இடையிலான வேறுபாடு

உள்ளடக்கம் நீக்கப்பட்டது உள்ளடக்கம் சேர்க்கப்பட்டது
imported>InternetArchiveBot
Reformat 1 URL (Wayback Medic 2.5)) #IABot (v2.0.9.5) (GreenC bot
 
"{{கூகுள் தமிழாக்கக் கட்டுரைகள்}} {{Infobox software | name = ASP.NET | logo = | screenshot = | caption = | developer = Microsoft | released = January 2002 | latest_release_version = 3.5.30729.1 (3.5 SP1) | latest_release..."-இப்பெயரில் புதிய பக்கம் உருவாக்கப்பட்டுள்ளது
 
வரிசை 31:
 
== பண்புகள் ==
=== பக்கங்கள் ===
 
உத்தியோகப்பூர்வமாக "வலைப்படிவங்கள்" என்று அழைக்கப்படும் .NET பக்கங்களே பயன்பாட்டு அபிவிருத்திக்கான முக்கிய கட்டுமானப் பிழம்புகளாக இருக்கின்றன.<ref name="macdonald63">{{harv|MacDonald|Szpuszta|2005|p=63}}</ref> இந்த வலைப்படிவங்கள் ஒரு ".aspx" விரிவாக்கங்களுடன் கோப்புகளில் இடம் பெற்றிருக்கும். நிரல்படுத்தல் வார்த்தைகளில் கூறுவதானால், இந்த கோப்புகள் குறிப்பிடத்தக்க அளவில் மாறா (X)HTML மார்க்அப்பைக் கொண்டிருக்கும். அத்துடன் வழங்கனின் வலை கட்டுப்பாடுகளையும், பயனர் கட்டுப்பாடுகளையும் வரையறுக்கும் மார்க்அப்களையும் கொண்டிருக்கும். இங்கே தான் அபிவிருத்தியாளர்கள் வலைப்பக்கத்திற்குத் தேவையான அனைத்து மாறா மற்றும் மாறும் தகவலடக்கத்தை வைத்திருப்பார்கள். மேலும் அத்துடன், வழங்கனில் ஓடி கொண்டே இருக்கும் மாறும் குறியீடானது, ஒரு பக்கத்தில் இருக்கும் <code><nowiki><% -- dynamic code -- %></nowiki></code> என்ற ஒரு பகுதிக்குள்ளேயே அமைக்கப்படுகிறது. இது PHP, JSP, மற்றும் ASP போன்ற பிற வலை அபிவிருத்தி தொழில்நுட்பங்களைப் போன்றதே. ஆனால் தரவு பிணைத்தல் (data binding) தேவைகளில் தவிர, பொதுவாக இதற்கு ஊக்கம் அளிக்கப்படுவதில்லை. பக்கத்தைப் பெறும் போது நிறைய அழைப்புகள் தேவைப்படுவதால் இது இவ்வாறு செய்யப்படுகிறது.{{Citation needed|date=November 2008}}
வரிசை 66:
</source>
 
=== பின்புற குறியீட்டு முறை ===
பின்புற குறியீட்டு முறையைப் பயன்படுத்தி டைனமிக் நிரல் குறியீட்டுடன் தொடர்புபடுவதையே மைக்ரோசாஃப்ட் பரிந்துரைக்கிறது. இந்த முறையானது குறியீட்டை ஒரு பிரத்யேக கோப்பில் இடுகிறது அல்லது பிரத்யேகமாக வடிவமைக்கப்பட்ட ஸ்க்ரிப்ட் ஒட்டியில் (tag) இருத்துகிறது. பின்புற குறியீட்டு முறையின் கோப்புகள் ''Mypage.aspx.cs'' அல்லது ''Mypage.aspx.vb'' போன்ற குறிப்பிடத்தக்க பெயர்களைக் கொண்டிருக்கும். குறிப்பாக, ASPX கோப்பு போன்றே இதே கோப்பு பெயர்கள் இருக்கும். ஆனால் இறுதியில் இருக்கும் நீட்சி மட்டும் பக்க மொழியைக் குறிப்பிட்டு காட்டும் வகையில் அமைந்திருக்கும். இந்த செயல்முறை மைக்ரோசாஃப்டின் விஷூவல் ஸ்டூடியோவிலும் மற்றும் பிற IDE-களிலும் தானாகவே நடக்கிறது. இந்த பாணியிலான நிரல்படுத்தலைப் பயன்படுத்தும் போது, அபிவிருத்தியாளர் பல்வேறு நிகழ்வுகளுக்கு, அதாவது ஆவணம் முழுவதையும் ஒரு வழிமுறைப்படி செய்யாமல், பக்கம் ஏற்றப்படுவது, அல்லது ஒரு கட்டுப்பாட்டுக் கட்டளை சொடுக்கப்படுவது போன்ற நிகழ்வுகளுக்கு பிரதிபலிப்பைக் காட்டும் வகையில் குறியீட்டை எழுதுகிறார்.
 
ASP.NET-ன் பின்புற குறியீட்டு முறை பழைய எஎஸ்பி-இல் இருந்து வெளியேறுவதற்கான வழியைக் காட்டுகிறது. அதில் புறத்தோற்றபாங்கையும், தகவலடக்கத்தையும் பிரித்து காட்டுவதை மனதில் வைத்து பயன்பாடுகளை உருவாக்க அபிவிருத்தியாளர்களை அது ஊக்குவிக்கிறது.
 
==== உதாரணம் ====
 
<source lang="asp">
வரிசை 97:
இதில், Page_Load() முறையானது, ASPX பக்கம் கோரப்படும் ஒவ்வொருமுறையும் மீண்டும் மீண்டும் அழைக்கப்படுகிறது. நிரலாளர் செயல்முறைப்படுத்தலைச் செய்ய பக்க செயல்பாட்டு செயல்முறையின் பல்வேறு நிலைகளில் நிகழ்வு கையாளுனிகளை (event handlers) நிறுவலாம்.
 
=== பயனர் கட்டுப்பாடுகள் ===
 
ASP.NET நுட்பம், பயனர் கட்டுப்பாடுகளை உருவாக்குவதன் மூலமாக மறுஉபயோகத்திற்குரிய உட்கூறுகளை உருவாக்க உதவுகின்றன. ஒரு பயனர் கட்டுப்பாடு ஒரு வலைப்படிவத்தின் அதே கட்டமைப்பையே கொண்டிருக்கும். ஆனால் விதிவிலக்காக அந்த கட்டுப்பாடுகள் <code>System.</code><code>Web.UI.UserControl</code>-ல் இருந்து பெறப்பட்டு, ASCX கோப்புகளில் சேமிக்கப்படுகின்றன. ASPX கோப்புகளைப் போலவே, ASCX கோப்பும் நிலையான HTML அல்லது XHTML மார்க்அப்பையும், அத்துடன் மார்க்அப்-களை வரையறுக்கும் வலைக்கட்டுபாட்டையும், மற்றும் பிற பயனர் கட்டுப்பாடுகளையும் கொண்டிருக்கிறது.
வரிசை 104:
</ref> மற்றும் நிகழ்வு கையாளுனிகளைச் சேர்க்க முடியும்.<ref>http://msdn2.microsoft.com/en-us/library/ms972975.aspx#usercontrols_topic9 Creating and Raising a Custom Event</ref> ஒரு நிகழ்வு குமிழியக்க பொறியமைப்பு ஒரு பயனர் கட்டுப்பாட்டால் வீசப்பட்ட ஒரு நிகழ்வை அது கொண்டிருக்கும் பக்கம் வரைக்கும் எடுத்துச் செல்வதற்கான திறனை அளிக்கிறது.
 
=== தேவைக்கேற்ற கட்டுப்பாடுகள் ===
 
நிரலாளர்கள் எஎஸ்பி.நெட் பயன்பாடுகளுக்காக தேவைக்கேற்ற கட்டுப்பாடுகளையும் உருவாக்க முடியும். ''பயனர் கட்டுப்பாடுகளைப்'' போல, இந்த கட்டுப்பாடுகள் ஒரு ASCX கோப்பைக் கொண்டிருக்காது. இதில் அவற்றின் குறியீடு அனைத்தும் ஒரு DLL-கோப்பிற்குள் தொகுக்கப்பட்டிருக்கும். இதுபோன்ற தேவைக்கேற்ற கட்டுப்பாடுகளைப் பன்முக வலை-பயன்பாடுகளுக்குள் பயன்படுத்த முடியும். ஆனால், இது பயனர் கட்டுப்பாடுகளில் அனுமதிக்கப்படுவதில்லை.
 
=== வழங்கும் நுட்பம் ===
 
எஎஸ்பி.நெட்-ஐ தொகுக்கும் போது, வார்ப்புரு (.aspx) கோப்பு துவக்க குறியீடுகளுக்குள் தொகுக்கப்படுகிறது. இது மூல வார்ப்புருவைக் குறிப்பிட்டு ஒரு கட்டுப்பாட்டு தொடர்வை (கலவை) உருவாக்குகிறது. நிலையுரு எழுத்துக்கள் நிலையுரு கட்டுப்பாட்டு வகுப்பின் நிலைக்குள் செல்கின்றன. மேலும் வழங்கன் கட்டுப்பாடுகள் ஒரு பிரத்யேக கட்டுப்பாட்டு வகுப்பின் நிலையால் குறிப்பிட்டு காட்டப்படுகின்றன. துவக்க குறியீடு பயனரால் எழுதப்பட்ட குறியீட்டுடன் ஒருங்கிணைக்கப்படுகின்றன. பின்னர் அந்த பக்கத்திற்காக ஒரு பிரத்யேக வகுப்பில் தொகுக்கப்படுகின்றன. அந்த பக்கம் கட்டுப்பாட்டு தொடர்வின் வர்க்கமாக இரட்டிப்பாகி செல்கிறது.
வரிசை 116:
இந்த கோரிக்கை செயல்முறைப்படுத்தப்பட்ட பின்னர், பக்க வகுப்பின் சான்று கைவிடப்படும். அத்துடன் மொத்த கட்டுப்பாட்டு கிளையும் கைவிடப்படும். இது புதிய எஎஸ்பி.நெட் நிரலாளர்களுக்கு பொதுவாக சிறிது குழப்பத்தை ஏற்படுத்தும். இது வகுப்பு சான்று உறுப்பினர்களைச் சார்ந்திருப்பதால், அது ஒவ்வொரு பக்க கோரிக்கை/ பிரதிபலிப்பு சுற்றுடன் காணாமல் போய்விடுகிறது.
 
=== நிலை மேலாண்மை ===
 
எஎஸ்பி.நெட் பயன்பாடுகள் ஒரு வலை வழங்கனில் பதிப்பிக்கப்பட்டு, நிலையற்ற (stateless) HTTP நெறிமுறையின் வழியாக அணுகப்படுகின்றன. இந்நிலையில், அந்த பயன்பாடு ஒரு நிலைப்பட்ட (stateful) தொடர்பை பயன்படுத்தினால், அது சொந்தமாக நிலை மேலாண்மையைச் செயல்படுத்த வேண்டியதிருக்கும். எஎஸ்பி.நெட் நிலை மேலாண்மைக்காக, பயன்பாடுகளில் பல்வேறு செயல்பாடுகள் வழங்கப்படுகின்றன. கருத்து வகையில், மைக்ரோசாஃப்ட் "நிலை" என்பதை பெரும்பாலும் GUI நிலையாக கையாள்கிறது; ஒரு பயன்பாடு, "தரவு நிலையைத்" தொடர்ந்து கண்காணிக்க வேண்டிய நிலை ஏற்படும் போது, பெரிய பிரச்சினைகள் உருவாகிவிடுகின்றன. அதாவது கோரிக்கைகளின் மந்தமான மதிப்பீடுகளுக்கோ அல்லது துவக்குவதற்கு நீண்ட காலம் எடுக்கும் கோரிக்கைகளுக்கோ இடையில் ஒரு தடுமாற்றத்தோடு இருக்கக்கூடிய ஓர் உறுதியான இயந்திரம் போல உருவாகிவிடுகின்றன.
 
==== பயன்பாட்டு நிலை ====
 
பயன்பாட்டு நிலை (application state) என்பது பயனர் வரையறுத்த மாறிகளின் ஒரு தொகுப்பாகும். இது ஒரு எஎஸ்பி.நெட் பயன்பாட்டால் பகிர்ந்து கொள்ளப்படுகிறது. <code>Application_OnStart</code> நிகழ்வு தூண்டிவிடும் போது இவை அமைக்கப்பட்டு, துவக்கப்படுகின்றன. மேலும் இவை இறுதி சான்று இருக்கும் வரைக்கும் இருக்கின்றன. பயன்பாட்டு நிலை மாறிகள் <code>பயன்பாட்டுகள்</code> தொகுப்புகளைப் பயன்படுத்தி அணுகப்படுகின்றன. இது பயன்பாட்டு நிலை மாறிகளுக்கு ஒரு போர்வையை அளிக்கிறது. பயன்பாட்டு நிலை மாறிகள் (Application state variables) பெயர்களால் அடையாளம் காணப்படுகின்றன.<ref name="state"/>
 
==== அமர்வு நிலை ====
 
அமர்வு நிலை என்பது பயனர் வரையறுத்த அமர்வு மாறிகளின் ஒரு தொகுப்பாகும். இது ஒரு பயனர் அமர்வின் போது பிடிவாதமாய் நிற்கிறது. இந்த மாறிகள் ஒரு பயனர் அமர்வின் பல்வேறு காலகட்டத்தில் வெவ்வேறாக இருக்கின்றன என்பதுடன் <code>அமர்வு</code> தொகுப்பைப் பயன்படுத்தி இவை அணுகப்படுகின்றன.
வரிசை 141:
: இந்த முறையில், நிலை மாறிகள் (state variables) ஒரு தரவுக்களஞ்சிய வழங்கனில் சேமிக்கப்படுகின்றன. இதை SQL கொண்டு அணுக முடியும். இந்த முறையிலும், அமர்வு மாறிகள் எஎஸ்பி.நெட் செயல்முறை மூடுதல்களின் போது நீக்கப்படாமல் வைத்திருக்கப்படும். இந்த முறையின் முக்கிய ஆதாயம் என்னவென்றால், அமர்வுகளைச் வழங்கன்களுக்கு இடையில் பகிர்ந்து கொண்டிருக்கும் போதும், ஒரு வழங்கன் கூட்டத்தில் இருக்கும் சுமையை அந்த பயன்பாடு சமமாக கையாள இது அனுமதிக்கிறது. இதுவே எஎஸ்பி.நெட்-ல் அமர்வு நிலை மேலாண்மையில் மிக குறைந்த வேகத்தில் இருக்கும் முறையாகும்.
 
==== பார்வைக்குரிய நிலை ====
 
பார்வைக்குரிய நிலை (view state) என்பது பக்க-அளவிலான நிலை மேலாண்மை பொறியமைப்பைக் குறிக்கிறது. இது வலைப்படிவ கட்டுப்பாடுகள் மற்றும் சாதனங்களின் நிலையை நிர்வகிக்க எஎஸ்பி.நெட் பயன்பாடுகளால் வெளியேற்றப்பட்ட எச்டிஎம்எல் பக்கங்களால் பயன்படுத்தப்படுகிறது. கட்டுப்பாடுகளின் நிலை குறியேற்றம் செய்யப்பட்டு, <code>__VIEWSTATE</code> என்றழைக்கப்படும் ஒரு மறைவிடத்தில் இருக்கும் ஒவ்வொரு படிவ அளிப்பிலும் வழங்கனுக்கு அனுப்பப்படுகிறது. பக்கம் மீண்டும் அளிக்கப்படும் போது, கட்டுப்பாடுகள் அவற்றின் முந்தைய நிலையை அளிக்கும் வகையில் வழங்கன் மாறியை திருப்பி அனுப்புகிறது. எந்த கட்டுப்பாட்டின் நிலையையும் இற்றைப்படுத்துவதில் செயல்படுத்துவதன் விளைவுகள் ஏற்பட்டால், சர்வரில், பயன்பாடானது பார்வைக்குரிய நிலையை மாற்றும். ஒவ்வொரு கட்டுப்பாடுகளின் நிலைகளும் சர்வரில் குறியிறக்கம் செய்யப்பட்டு, பின்னர் <code>ViewState</code> தொகுப்பைப் பயன்படுத்தி எஎஸ்பி.நெட் பக்கங்களில் பயன்பாட்டிற்காக நிறுத்தப்படுகின்றன.<ref>{{cite web | url = http://www.extremeexperts.com/Net/Articles/ViewState.aspx | title = ViewState in ASP.NET | accessdate = 2007-10-23}}</ref>
வரிசை 150:
பார்வைக்குரிய நிலை தரவைக் கொண்டிருக்கும் base64 சரத்தின் வரிசைப்படுத்தலை, வலையில் கிடைக்கும் பல்வேறு கருவிகளில் ஒன்றைப் பயன்படுத்தியோ அல்லது ஏதாவதொரு பொதுவான base64 குறியிறக்கியைப் பயன்படுத்தியோ எளிமையாக குலைத்துவிட முடியும் என்பதால், மிகவும் முக்கியமான அல்லது பிரத்யேக தகவல்களை ஒரு பக்கத்தின் அல்லது கட்டுப்பாட்டின் view state-ல் சேமித்து வைக்கும் போது அபிவிருத்தியாளர்கள் மிகவும் எச்சரிக்கையாக இருக்க வேண்டி உள்ளது. பார்வைக்குரிய நிலை, முன்னிருப்பாகவே, __VIEWSTATE மதிப்பை குறியேற்றம் செய்து வைத்திருப்பதில்லை; எவ்வாறிருப்பினும், ஒரு குறிப்பிட்ட அளவிலான பாதுகாப்பைக் கொண்டிருக்கும் வகையில் அனைத்து வழங்கன்களுக்கும் குறியேற்றத்தைச் செயல்பாட்டில் வைத்திருக்க முடியும்.<ref>{{cite web | url = http://msdn.microsoft.com/en-us/library/aa479501.aspx | title = Encrypting Viewstate in ASP.NET | accessdate = 2009-07-19}}</ref>
 
==== மற்றவை ====
குக்கீஸ், கேச்சிங் மற்றும் வினாச்சரம் பயன்படுத்துதல் ஆகியவை ASP.NET-ஆல் ஒத்துழைக்கப்படும் நிலை மேலாண்மையின் பிற விஷயங்களாகும்.
 
=== வார்ப்புரு இயந்திரம் ===
 
முதன்முதலாக வெளியிடப்பட்ட போது, ASP.NET-ல் ஒரு வார்ப்புரு இயந்திரம் கிடையாது. .NET வரைச்சட்டம் ஆப்ஜெக்ட்டைச் சார்ந்து இருந்ததாலும், மரபுவழியடைதலை அனுமதிப்பதாலும், பல அபிவிருத்தியாளர்கள் "System.Web.UI.Page"-ல் உள்ளிருப்பாக இருந்த ஒரு புதிய அடித்தள வகுப்பை வரையறுக்க வேண்டி இருந்தது, எழுதும் முறைகள் இங்கே HTML-ல் இருந்து பெறப்பட்டது, பின்னர் இந்த பக்கங்களை அவர்களின் பயன்பாட்டில் இந்த புதிய வகுப்பில் இருந்து உள்ளிருப்பாக வைப்பார்கள். பொதுவான உட்கூறுகள் ஒரு வலைத்தளத்தினிடையே மறுஉபயோகம் செய்யப்பட இது அனுமதிக்கிறது என்ற போதினும், இது குழப்பத்தையே ஏற்படுத்தியது, மேலும் முதன்மை குறியீட்டை மார்க்அப் உடன் கலந்துவிடுகிறது. அது மட்டுமில்லாமல், இந்த முறையானது பயன்பாட்டை ஓடவிட்டு நேரடி பார்வையில் மட்டும் தான் பரிசோதிக்க முடியும் . இதைதை வடிவமைக்கும் போது பரிசோதிக்க முடியாது. பிற அபிவிருத்தியாளர்கள் ஒவ்வொரு பக்கத்திலும் ஒரே வழிசெலுத்துதலையும், பிற உட்கூறுகளையும் நிறுவ வேண்டியதைத் தடுக்க பிற உத்திகளையும், கோப்புகளையும் சேர்த்து பயன்படுத்தினார்கள்.
வரிசை 165:
முதன்மை பக்கமானது தகவலடக்க பக்கத்தை முழுமையாக அணுகும் வகையில் இருக்கிறது. அதாவது, தகவலடக்க பக்கமத்தால் தலைப்பியை மாற்றுதல், தலைப்பை மாற்றுதல், கேச்சிங் உள்ளமைவு செய்தல் மற்றும் இன்னும் இதரபிற வேலைகளையும் செய்ய முடியும். பொது விஷயங்களையோ அல்லது முறைகளையோ முதன்மை பக்கம் வெளிக்காட்டினால் (எடுத்துக்காட்டாக, காப்புரிமை தகவல்களை அமைப்பது போன்றவை), தகவலடக்க பக்கம் அவற்றையும் பயன்படுத்தி கொள்ளும்.
 
=== பிற கோப்புகள் ===
 
ASP.NET-ல் உள்ளடங்கி இருக்கும் பல்வேறு பதிப்புகளுடன் இணைந்திருக்கும் பிற கோப்பு விரிவாக்கங்கள்:
வரிசை 236:
|}
 
=== கோப்பக கட்டமைப்பு ===
 
பொதுவாக, ASP.NET கோப்பக வடிவமைப்பு அபிவிருத்தியாளர்களின் விருப்பப்படியே அமைக்கப்படும். ஒருசில குறிப்பிட்ட கோப்பக பெயர்கள் தவிர, ஒரு வலைத்தளமானது எத்தனை கோப்பகங்களை வேண்டுமானாலும் நீட்டப்பட்டிருக்கலாம். இந்த வடிவமைப்பு குறிப்பிடத்தக்களவில் நேரடியாக வலைமுகவரிகளில் பிரதிபலிக்கப்பட்டிருக்கும். செயல்படுத்தப்பட்டு கொண்டிருக்கும் போது எந்த சமயத்திலும் கோரிக்கையைத் தடுத்து மாற்றுவதற்கான வாய்ப்பை ASP.NET அளிக்கிறது என்ற போதினும், ஒரு மைய பயன்பாடு அல்லது முன் கட்டுப்பாடினியைக் கொண்டு கோரிக்கைகளை நீக்க அபிவிருத்தியாளர் கட்டாயப்படுத்தப்படுவதில்லை.
"https://tamilar.wiki/w/ஏஎஸ்பி.நெட்" இலிருந்து மீள்விக்கப்பட்டது