ASP.NET Razor - Ngôn ngữ语法 C# và VB
- Trang trước Giới thiệu Razor
- Trang tiếp theo Biến C# trong Razor
Razor hỗ trợ đồng thời C# (C sharp) và VB (Visual Basic).
Các quy tắc ngôn ngữ grammar chính của C#
- Mã Razor được bao bọc trong @{ ... }
- Biểu thức trong dòng (biến và hàm) bắt đầu bằng @
- Câu lệnh mã kết thúc bằng dấu chấm phẩy
- Chuỗi được bao bọc bởi dấu ngoặc kép
- Mã C# phân biệt chữ hoa và chữ thường
- Tên mở rộng tệp C# là .cshtml
Mô hình C#
<!-- Khối mã đơn dòng --> @{ var myMessage = "Hello World"; } <!-- Biểu thức hoặc biến trong dòng --> <p>Giá trị của myMessage là: @myMessage</p> <!-- Khối mã đa dòng --> @{ var greeting = "Welcome to our site!"; var weekDay = DateTime.Now.DayOfWeek; var greetingMessage = greeting + " Here in Huston it is: " + weekDay; } <p>Chào mừng: @greetingMessage</p>
Chạy mẫu
Các quy tắc ngôn ngữ grammar chính của VB
- Khối mã Razor được bao bọc trong @Code ... End Code
- Biểu thức trong dòng (biến và hàm) bắt đầu bằng @
- Định nghĩa biến bằng từ khóa Dim
- Chuỗi được bao bọc bởi dấu ngoặc kép
- VB không phân biệt chữ hoa và chữ thường
- Tên mở rộng tệp VB là .vbhtml
Mẫu
<!-- Khối mã đơn dòng --> @Code dim myMessage = "Hello World" End Code <!-- Biểu thức hoặc biến trong dòng --> <p>Giá trị của myMessage là: @myMessage</p> <!-- Khối mã đa dòng --> @Code dim greeting = "Welcome to our site!" dim weekDay = DateTime.Now.DayOfWeek dim greetingMessage = greeting & " Here in Huston it is: " & weekDay Kết thúc mã <p>Chào mừng: @greetingMessage</p>
Chạy mẫu
Cách hoạt động?
Razor là một ngôn ngữ lập trình đơn giản, được sử dụng để chèn mã máy chủ trong trang web.
Ngôn ngữ grammar Razor dựa trên khung ASP.NET, khung này là một phần của khung .NET của Microsoft được thiết kế đặc biệt cho việc phát triển ứng dụng web.
Ngôn ngữ语法 Razor cung cấp cho bạn tất cả các khả năng của ASP.NET, nhưng lại sử dụng ngôn ngữ语法 đã được đơn giản hóa, do đó dễ dàng học tập hơn đối với người mới bắt đầu và có lợi hơn cho việc nâng cao hiệu suất đối với người có kinh nghiệm.
Trang web Razor có thể được mô tả là trang HTML có hai loại nội dung: nội dung HTML và mã Razor.
Khi máy chủ đọc loại trang này, trước khi gửi trang HTML đến trình duyệt, máy chủ sẽ chạy mã Razor trước. Các mã này được thực thi trên máy chủ có thể hoàn thành các nhiệm vụ mà trình duyệt không thể hoàn thành, chẳng hạn như truy cập cơ sở dữ liệu máy chủ. Mã trên máy chủ có thể tạo nội dung HTML động trước khi trang được gửi đến trình duyệt. Đối với trình duyệt, HTML được tạo bởi mã trên máy chủ không khác biệt so với nội dung HTML tĩnh.
Trang web ASP.NET sử dụng ngữ pháp Razor có tên tệp mở rộng đặc biệt cshtml (sử dụng ngữ pháp Razor của C#) hoặc vbhtml (sử dụng ngữ pháp Razor của VB).
Giao tiếp với đối tượng
Mã trên máy chủ thường liên quan đến đối tượng.
Đối tượng "Date" là một đối tượng xây dựng sẵn của ASP.NET, nhưng bạn cũng có thể tự định nghĩa đối tượng, một trang web, một hộp văn bản, một tệp, hoặc một bản ghi cơ sở dữ liệu, v.v.
Đối tượng có thể có các phương pháp có thể thực hiện. Bản ghi cơ sở dữ liệu có thể cung cấp phương pháp "lưu", đối tượng hình ảnh có thể có phương pháp "xoay", đối tượng email có thể cung cấp phương pháp "gửi", và thế là.
Đối tượng cũng có thể có các thuộc tính mô tả đặc điểm của nó. Bản ghi cơ sở dữ liệu có thể có thuộc tính FirstName và LastName.
Đối tượng ASP.NET Date có thuộc tính Now (viết là Date.Now), thuộc tính Now có thuộc tính Day (viết là Date.Now.Day). Dưới đây là ví dụ về cách truy cập vào một số thuộc tính của đối tượng Date:
Mẫu
<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>
Chạy mẫu
Điều kiện If và Else
Tính chất quan trọng của trang web động dựa trên việc xác định hành động thực hiện dựa trên điều kiện.
Cách thường dùng để thực hiện điều này là sử dụng câu lệnh if ... else:
Mẫu
@{ var txt = ""; if(DateTime.Now.Hour > 12)} {txt = "Chào buổi tối";} else {txt = "Chào buổi sáng";} } <html> <body> <p>Thông điệp là @txt</p> </body> </html>
Chạy mẫu
Đọc dữ liệu đầu vào của người dùng
Một tính năng quan trọng khác của trang web động là đọc dữ liệu đầu vào của người dùng.
Đọc dữ liệu đầu vào bằng hàm Request[] và kiểm tra điều kiện IsPost:
Mẫu
@{ var totalMessage = ""; if(IsPost) { var num1 = Request["text1"]; var num2 = Request["text2"]; var total = num1.AsInt() + num2.AsInt(); totalMessage = "Tổng = " + total; } } <html> <body style="background-color: beige; font-family: Verdana, Arial;"> <form action="" method="post"> <p><label for="text1">Số thứ nhất:</label><br> <input type="text" name="text1" /></p> <p><label for="text2">Số thứ hai:</label><br> <input type="text" name="text2" /></p> <p><input type="submit" value=" Thêm " /></p> </form> <p>@totalMessage</p> </body> </html>
Chạy mẫu
- Trang trước Giới thiệu Razor
- Trang tiếp theo Biến C# trong Razor