ASP.NET Web窗體頁面是一個宣告式的文本文件,擴展名是.aspx。除了靜態的內容之外,你還可以使用八種不同的語法標記元素。這一部分回顧這些語法元素並提供了一些使用方法示例。
呈現代碼的語法:<% %>和<%= %>
代碼呈現塊用<% ... %>元素表示,它允許你控制呈現的內容,在Web窗體頁面執行的顯示階段執行。下面的例子演示了如何使用它們循環顯示HTML的內容。
<%@ Page Language="VB" %>
<html>
<body>
<% Dim I As Integer
For I = 0 To 7 %>
<font size="<%=I%>"> Hello World! </font> <br>
<% Next %>
</body>
</html>
<% ... %>包含的代碼只是執行,而包含等號(<%= ... %>)的表達式會在顯示內容的時候計算結果。因此,<%="Hello World" %>與C#代碼<% Response.Write("Hello World"); %>顯示的結果相同。
請注意,由於語言需要使用標記來終止或分離語句(例如C#中的分號;),正確地放置這些標記就很重要了。
C# 代碼
<% Response.Write("Hello World"); %> 需要用分號來終止語句。
<%="Hello World"; %> 錯誤:導致"Response.Write("Hello World";);"。
<%="Hello World" %> 不需要分號。
聲明代碼的語法:<script runat="server">
代碼聲明塊定義了會被編譯到Page類中的成員變量和方法。這些塊可用於建立頁面和導航邏輯。下面的例子演示了如何在<script runat="server">塊中定義Subtract方法,接著在頁面中調用它。
<html>
<script language="VB" runat=server>
Function Subtract(Num1 As Integer, Num2 As Integer) As Integer
Return Num1-Num2
End Function
</script>
<body>
<%
Dim Number As Integer = 100
Do While Number > 0
Response.Write("Value: " & Number & "<br>")
Number = Subtract(Number, 1)
Loop
%>
</body>
</html>
請注意:與ASP不同——在ASP中函數必須在<% %>塊中定義——所有的函數和全局變量必須使用<script runat=server>標記定義。<% %>塊中的函數聲明會提示語法編譯錯誤信息。