एसपीएनईटी रेज़र - सीशarp और वीबी सिंटैक्स

रेज़र सीशार (सी शार्प) और वीब (विजुअल बेसिक) दोनों को समर्थित करता है।

सीशार के मुख्य रेज़र सिंटैक्स नियम

  • रेज़र कोड सीशार ... } में घिरा है
  • इनलाइन एक्सप्रेशन (वेरियेबल और फ़ंक्शन) @ से शुरू होते हैं
  • कोड स्टेटमेंट को सेमीकोलन से समाप्त किया जाता है
  • शब्दकोश अभिव्यक्ति आयातकों से घिरा हुआ है
  • सीशार कोड के लिए आक्षर सुस्तरता संवेदनशील है
  • सीशार फ़ाइल का एक्सटेंशन .cshtml है

सीशार उदाहरण

<!-- एकल वाक्य साइड ब्लॉक -->
@{ वार मेरा_मेसेज =	"हेलो वर्ल्ड"; }
<!-- इनलाइन एक्सप्रेशन या वेरियेबल -->
<p>मेरा मेसेज की वैल्यू: @मेरा_मेसेज</p> 
<!-- बहुलवाक्य साइड ब्लॉक -->
@{
वार ग्रीटिंग = "हमारे साइट पर स्वागत है!";
वार वीकडे = डेटीटाइम.नाउ.डेऑफवीक;
वार ग्रीटिंगमेसेज = ग्रीटिंग + " हूस्टन में यह है: " + वीकडे;
}
<p>स्वागत संदेश: @greetingMessage</p>

उदाहरण चलाएं

वीब के मुख्य रेज़र सिंटैक्स नियम

  • रेज़र कोड ब्लॉक @कोड ... एंड कोड में घिरा है
  • इनलाइन एक्सप्रेशन (वेरियेबल और फ़ंक्शन) @ से शुरू होते हैं
  • वेरियेबल को घोषित करने के लिए डिम कीवर्ड का उपयोग करें
  • शब्दकोश अभिव्यक्ति आयातकों से घिरा हुआ है
  • वीब के लिए आक्षर सुस्तरता असंवेदनशील है
  • वीब फ़ाइल का एक्सटेंशन .vbhtml है

उदाहरण

<!-- एकल वाक्य साइड ब्लॉक -->
@कोड डिम मेरा_मेसेज = "हेलो वर्ल्ड" एंड कोड
<!-- इनलाइन एक्सप्रेशन या वेरियेबल -->
<p>मेरा मेसेज की वैल्यू: @मेरा_मेसेज</p> 
<!-- बहुलवाक्य साइड ब्लॉक -->
@कोड
डिम ग्रीटिंग = "हमारे साइट पर स्वागत है!" 
डिम वीकडे = डेटीटाइम.नाउ.डेऑफवीक 
डिम ग्रीटिंगमेसेज = ग्रीटिंग & " हूस्टन में यह है: " & वीकडे
कोड समाप्त 
<p>स्वागत संदेश: @greetingMessage</p>

उदाहरण चलाएं

कैसे काम करता है?

रेज़र एक सरल प्रोग्रामिंग सिंटैक्स है, जिसका उपयोग वेब पृष्ठ में सर्वर पार्श्व कोड को इम्बेड करने के लिए किया जाता है。

रेज़र सिंटैक्स एसपीएनईटी फ्रेमवर्क पर आधारित है, जो माइक्रोसॉफ्ट के .NET फ्रेमवर्क का एक अंग है जो वेब अनुप्रयोग विकास के लिए विशेष रूप से डिजाइन किया गया है。

रेज़र सिंटैक्स आपको एसपीएनईटी की सभी क्षमताएं प्रदान करता है, लेकिन सरलीकृत सिंटैक्स का उपयोग करता है, अगर आप नया शिक्षार्थी हैं, तो यह आपको आसानी से सीखने में मदद करता है, अगर आप विशेषज्ञ हैं, तो यह आपकी उत्पादकता बढ़ाने में मदद करता है。

Razor वेब पेज दो प्रकार के सामग्री के साथ बताया जा सकता है: HTML सामग्री और Razor कोड।

सर्वर इस तरह के पेजों को पढ़ने के बाद, HTML पेज को ब्राउज़र को भेजने से पहले, Razor कोड चलाता है। इसी सर्वर पर चलने वाले कोड ब्राउज़र में करने नहीं सकने वाले कार्य कर सकते है, जैसे सर्वर डाटाबेस की पहुंच। सर्वर कोड पेज को ब्राउज़र को भेजने से पहले डायनेमिक HTML सामग्री बना सकता है। ब्राउज़र के लिए देखने के अनुसार, सर्वर कोड द्वारा बनाया गया HTML ब्रोडकास्ट सामग्री से अलग नहीं है。

Razor बाइलेज के साथ ASP.NET वेब पेजों का विशेष फ़ाइल एक्सटेंशन cshtml (C# के Razor बाइलेज का उपयोग करते है) या vbhtml (VB के Razor बाइलेज का उपयोग करते है) है。

ऑब्जैक्टों से दस्तावेज

सर्वर कोड को प्रायः ऑब्जैक्टों से संबंधित होता है。

"Date" ऑब्जैक्ट एक तीव्र आस्प.नेट इनबिलड ऑब्जैक्ट है, लेकिन आप अपने आप ऑब्जैक्ट भी परिभाषित कर सकते हैं, एक वेब पेज, एक टेक्स्ट बॉक्स, एक फाइल, या एक डाटाबेस रिकॉर्ड, आदि।

ऑब्जैक्ट के लिए कार्य करने वाले विधियाँ भी हो सकती हैं। डाटाबेस रिकॉर्ड को "सहेजें" विधि देनी हो सकती है, इमेज ऑब्जैक्ट को "घुमाएं" विधि देनी हो सकती है, ईमेल ऑब्जैक्ट को "भेजें" विधि देनी हो सकती है, इसी तरह और ऐसे ही हैं。

ऑब्जैक्ट के वर्णनात्मक अट्रिब्यूट भी हो सकते हैं। डाटाबेस रिकॉर्ड के लिए FirstName और LastName अट्रिब्यूट हो सकते हैं。

ASP.NET Date ऑब्जैक्ट Now अट्रिब्यूट (जिसे Date.Now लिखा जाता है) का है, Now अट्रिब्यूट में Day अट्रिब्यूट (जिसे Date.Now.Day लिखा जाता है) है। नीचे दिए गए उदाहरण में Date ऑब्जैक्ट के कुछ अट्रिब्यूट कैसे पहुंचा जाएगा को दिखाया गया है:

उदाहरण

<table border="1">
<tr>
<th width="100px">Name</th>
<td width="100px">Value</td>
</tr>
<tr>
<td>Day</td><td>@DateTime.Now.Day</td>
</tr>
<tr>
<td>Hour</td><td>@DateTime.Now.Hour</td>
</tr>
<tr>
<td>Minute</td><td>@DateTime.Now.Minute</td>
</tr>
<tr>
<td>Second</td><td>@DateTime.Now.Second</td>
</tr>
</td>
</table>

उदाहरण चलाएं

If और Else कंडिशन

डायनेमिक वेब पेज का महत्वपूर्ण गुण एक कंडिशन के आधार पर कार्य करने का है。

इसे होने का सामान्य तरीका if ... else सटेंस का उपयोग करना है:

उदाहरण

@{
var txt = "";
if(DateTime.Now.Hour > 12)
  {txt = "Good Evening";}
else
  {txt = "Good Morning";}
}
<html>
<body>
<p>The message is @txt</p>
</body>
</html>

उदाहरण चलाएं

उपयोगकर्ता इनपुट पढ़ना

डायनेमिक वेब पृष्ठ की एक अन्य महत्वपूर्ण विशेषता उपयोगकर्ता के इनपुट को पढ़ना है।

Request[] फ़ंक्शन द्वारा इनपुट पढ़ा जाता है और IsPost शर्त द्वारा परीक्षण किया जाता है:

उदाहरण

@{
var totalMessage = "";
if(IsPost)
    {
    var num1 = Request["text1"];
    var num2 = Request["text2"];
    var total = num1.AsInt() + num2.AsInt();
    totalMessage = "Total = " + total;
    }
}
<html>
<body style="background-color: beige; font-family: Verdana, Arial;">
<form action="" method="post">
<p><label for="text1">First Number:</label><br>
<input type="text" name="text1" /></p>
<p><label for="text2">Second Number:</label><br>
<input type="text" name="text2" /></p>
<p><input type="submit" value=" Add " /></p>
</form>
<p>@totalMessage</p>
</body>
</html>

उदाहरण चलाएं