ASP.NET มีดโกนไวยากรณ์
มีดโกนยังสนับสนุน C # (ซีชาร์ป) และ VB (Visual Basic)
หลักมีดโกน C # กฎไวยากรณ์
- บล็อกรหัสมีดโกนรวมอยู่ในที่ @ { ... }
- การแสดงออก Inline (ตัวแปรและฟังก์ชั่น) เริ่มต้นด้วย!
- จบงบรหัสด้วยเครื่องหมายอัฒภาค
- ตัวแปรที่ประกาศใช้คำวา
- สตริงในเครื่องหมายคำพูด
- รหัส C # เป็นกรณีที่สำคัญ
- ขยาย C # ไฟล์ .cshtml
ตัวอย่างของ C #
@{ var myMessage = "Hello World"; }
<!-- Inline expression or variable -->
<p>The value of myMessage is: @myMessage </p>
<!-- Multi-statement block -->
@{
var greeting = "Welcome to our site!";
var weekDay = DateTime.Now.DayOfWeek;
var greetingMessage = greeting + " Here in Huston it is: " + weekDay;
}
<p>The greeting is: @greetingMessage </p>
เล่นอินสแตนซ์»
หลักมีดโกน VB กฎไวยากรณ์
- บล็อกรหัสมีดโกนมี @Code ... รหัส End ใน
- การแสดงออก Inline (ตัวแปรและฟังก์ชั่น) เริ่มต้นด้วย!
- ประกาศตัวแปรโดยใช้คำหลักติ่ม
- สตริงในเครื่องหมายคำพูด
- รหัส VB ไม่ได้เป็นกรณี ๆ ไป
- นามสกุลไฟล์ VB เป็น .vbhtml
ตัวอย่าง
@Code dim myMessage = "Hello World" End Code
<!-- Inline expression or variable -->
<p>The value of myMessage is: @myMessage </p>
<!-- Multi-statement block -->
@Code
dim greeting = "Welcome to our site!"
dim weekDay = DateTime.Now.DayOfWeek
dim greetingMessage = greeting & " Here in Huston it is: " & weekDay
End Code
<p>The greeting is: @greetingMessage </p>
เล่นอินสแตนซ์»
มันทำงานอย่างไร?
มีดโกนเป็นรหัสเซิร์ฟเวอร์ที่ฝังอยู่ในหน้าเว็บไวยากรณ์การเขียนโปรแกรมง่าย
ไวยากรณ์มีดโกนอยู่บนพื้นฐานของกรอบ ASP.NET สำหรับการสร้างการใช้งานเว็บโดยเฉพาะส่วนหนึ่งของกรอบ Microsoft.NET
ไวยากรณ์มีดโกนสนับสนุนคุณลักษณะทั้งหมดของ ASP.NET แต่การใช้ไวยากรณ์ที่เรียบง่ายเป็นเรื่องง่ายที่จะเรียนรู้สำหรับผู้เริ่มต้นผู้เชี่ยวชาญในแง่ของการมีประสิทธิภาพมากขึ้น
หน้าเว็บ HTML มีดโกนสามารถอธิบายได้ดังต่อไปนี้ทั้งสองประเภทของเนื้อหา: เนื้อหา HTML และรหัสมีดโกน
เมื่อเซิร์ฟเวอร์อ่านหน้ามันเป็นครั้งแรกเรียกใช้รหัสมีดโกนแล้วส่งหน้า HTML เบราว์เซอร์ รหัสจะถูกดำเนินการบนเซิร์ฟเวอร์สามารถดำเนินการบางส่วนของเบราว์เซอร์ไม่สามารถดำเนินการเช่นการเข้าถึงเซิร์ฟเวอร์ฐานข้อมูล รหัสเซิร์ฟเวอร์สามารถสร้างเนื้อหา HTML แบบไดนามิกและจากนั้นส่งไปยังเบราว์เซอร์ จากจุดของเบราว์เซอร์มุมมองของเซิร์ฟเวอร์สร้างโค้ด HTML ไม่แตกต่างจากเนื้อหา HTML แบบคงที่
เพจ ASP.NET มีไวยากรณ์มีดโกนมี cshtml นามสกุลไฟล์พิเศษ (มีดโกน C #) หรือ vbhtml (มีดโกน VB)
การใช้วัตถุ
เซิร์ฟเวอร์รหัสมักจะเกี่ยวข้องกับวัตถุ
"วันที่" วัตถุที่เป็นปกติในตัววัตถุ ASP.NET แต่วัตถุยังสามารถปรับแต่ง, หน้าเว็บ, กล่องข้อความ, ไฟล์บันทึกฐานข้อมูลและอื่น ๆ
วัตถุมีวิธีการสำหรับการดำเนินการ บันทึกฐานข้อมูลอาจมีการ "บันทึก" วิธีวัตถุภาพอาจมีวิธีการ "หมุน" วัตถุอีเมลอาจจะมี "ส่ง" วิธีการและอื่น ๆ
วัตถุที่มีแอตทริบิวต์ที่ใช้อธิบายลักษณะของตัวเอง บันทึกฐานข้อมูลอาจมีแอตทริบิวต์ FirstName และนามสกุล
ตอนนี้วัตถุ ASP.NET วันที่มีคุณสมบัติ (เขียน Date.Now) ขณะนี้มีแอตทริบิวต์คุณสมบัติวัน (เขียน Date.Now.Day) ตัวอย่างต่อไปนี้แสดงให้เห็นถึงวิธีการที่จะเข้าถึงข้อมูลวัตถุคุณลักษณะบางอย่าง
ตัวอย่าง
<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>
เล่นอินสแตนซ์»
หากการและเงื่อนไขอื่น ๆ
คุณลักษณะที่สำคัญของหน้าเว็บแบบไดนามิกคือการที่คุณสามารถตัดสินใจได้ว่าจะทำอย่างไรขึ้นอยู่กับเงื่อนไขที่
วิธีการทั่วไปในการทำเช่นนี้คือการใช้ถ้า ... อื่นคำสั่ง:
ตัวอย่าง
var txt = "";
if(DateTime.Now.Hour > 12)
{txt = "Good Evening";}
else
{txt = "Good Morning";}
}
<html>
<body>
<p>The message is @txt </p>
</body>
</html>
เล่นอินสแตนซ์»
อ่านท่านผู้ใช้
อีกคุณสมบัติที่สำคัญของหน้าเว็บแบบไดนามิกคุณสามารถอ่านท่านผู้ใช้
ป้อนผ่านขอ [] ฟังก์ชั่นในการอ่านและส่งข้อมูลคือการป้อนข้อมูลผ่าน 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>
เล่นอินสแตนซ์»