- ASP.NET 教程
- ASP.NET - 首頁
- ASP.NET - 簡介
- ASP.NET - 環境
- ASP.NET - 生命週期
- ASP.NET - 第一個示例
- ASP.NET - 事件處理
- ASP.NET - 伺服器端
- ASP.NET - 伺服器控制元件
- ASP.NET - HTML 伺服器控制元件
- ASP.NET - 客戶端
- ASP.NET - 基本控制元件
- ASP.NET - 指令
- ASP.NET - 狀態管理
- ASP.NET - 驗證器
- ASP.NET - 資料庫訪問
- ASP.NET - ADO.NET
- ASP.NET - 檔案上傳
- ASP.NET - 廣告輪播
- ASP.NET - 日曆控制元件
- ASP.NET - 多檢視
- ASP.NET - 面板控制元件
- ASP.NET - AJAX 控制元件
- ASP.NET - 資料來源
- ASP.NET - 資料繫結
- ASP.NET - 自定義控制元件
- ASP.NET - 個性化
- ASP.NET - 錯誤處理
- ASP.NET - 除錯
- ASP.NET - LINQ
- ASP.NET - 安全性
- ASP.NET - 資料快取
- ASP.NET - Web 服務
- ASP.NET - 多執行緒
- ASP.NET - 配置
- ASP.NET - 部署
- ASP.NET 資源
- ASP.NET - 快速指南
- ASP.NET - 有用資源
- ASP.NET - 討論
ASP.NET - 第一個示例
一個 ASP.NET 頁面由許多伺服器控制元件以及 HTML 控制元件、文字和影像組成。頁面中的敏感資料以及頁面上不同控制元件的狀態儲存在隱藏欄位中,這些欄位構成了該頁面請求的上下文。
ASP.NET 執行時控制頁面例項與其狀態之間的關聯。ASP.NET 頁面是 Page 物件或其繼承類的物件。
頁面上的所有控制元件也是從父 Control 類繼承的相關控制元件類的物件。執行頁面時,將建立物件頁面的例項及其所有內容控制元件。
ASP.NET 頁面也是一個以 .aspx 為副檔名的伺服器端檔案。它具有模組化特性,可以分為以下核心部分:
- 頁面指令
- 程式碼段
- 頁面佈局
頁面指令
頁面指令設定頁面執行的環境。@Page 指令定義 ASP.NET 頁面解析器和編譯器使用的頁面特定屬性。頁面指令指定如何處理頁面,以及需要對頁面做出哪些假設。
它允許匯入名稱空間、載入程式集以及使用自定義標籤名稱和名稱空間字首註冊新控制元件。
程式碼段
程式碼段提供頁面和控制元件事件的處理程式以及所需的其它函式。我們提到過,ASP.NET 遵循物件模型。現在,當用戶介面上發生某些事件時,例如使用者單擊按鈕或移動游標,這些物件會引發事件。這些事件需要響應的型別在事件處理程式函式中編碼。事件處理程式只不過是繫結到控制元件的函式。
程式碼段或程式碼隱藏檔案提供所有這些事件處理程式例程以及開發人員使用的其他函式。頁面程式碼可以預編譯並以二進位制程式集的形式部署。
頁面佈局
頁面佈局提供頁面的介面。它包含伺服器控制元件、文字、內聯 JavaScript 和 HTML 標籤。
以下程式碼片段提供了一個示例 ASP.NET 頁面,解釋了用 C# 編寫的頁面指令、程式碼段和頁面佈局。
<!-- directives -->
<% @Page Language="C#" %>
<!-- code section -->
<script runat="server">
private void convertoupper(object sender, EventArgs e)
{
string str = mytext.Value;
changed_text.InnerHtml = str.ToUpper();
}
</script>
<!-- Layout -->
<html>
<head>
<title> Change to Upper Case </title>
</head>
<body>
<h3> Conversion to Upper Case </h3>
<form runat="server">
<input runat="server" id="mytext" type="text" />
<input runat="server" id="button1" type="submit" value="Enter..." OnServerClick="convertoupper"/>
<hr />
<h3> Results: </h3>
<span runat="server" id="changed_text" />
</form>
</body>
</html>
將此檔案複製到 Web 伺服器根目錄。通常是 c:\iNETput\wwwroot。從瀏覽器開啟該檔案以執行它,它將生成以下結果。
使用 Visual Studio IDE
讓我們使用 Visual Studio IDE 開發相同的示例。無需鍵入程式碼,只需將控制元件拖動到設計檢視即可。
內容檔案會自動生成。您只需新增 Button1_Click 例程,如下所示:
protected void Button1_Click(object sender, EventArgs e)
{
string buf = TextBox1.Text;
changed_text.InnerHtml = buf.ToUpper();
}
內容檔案程式碼如下所示:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs"
Inherits="firstexample._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>
Untitled Page
</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server" style="width:224px">
</asp:TextBox>
<br />
<br />
<asp:Button ID="Button1" runat="server" Text="Enter..." style="width:85px" onclick="Button1_Click" />
<hr />
<h3> Results: </h3>
<span runat="server" id="changed_text" />
</div>
</form>
</body>
</html>
透過右鍵單擊設計檢視並從彈出選單中選擇“在瀏覽器中檢視”來執行示例。這將生成以下結果: