程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> ASP.NET頁的客戶端

ASP.NET頁的客戶端

編輯:關於ASP.NET

軟件行業的一個趨勢是將許多編寫代碼的工作量轉移到基本平台的基礎結構。眾多開發平台只是要求 開發人員使用相對寬松的語法,在較高級別上對所需的信息進行描述,而不是按照一組嚴格的語法規則進 行逐字節的硬編碼。現在,開發人員經常使用 XML 語言來描述所需的結果,通過編譯器或運行時引擎對 內容進行分析,並將其處理成傳統的可執行代碼。

例如,Windows® Presentation Foundation(.NET Framework 3.0 的支柱之一)使用 XAML 作為 基於 XML 的呈現語言,以描述表單用戶界面。Microsoft AJAX 庫(以前代碼名為 ASP.NET“Atlas”的系統的一部分)使用其 XML-Script 元語言將相同原則應用於富文本網頁 (盡管從技術上看,XML-Script 不屬於其核心發布內容,而是作為非官方示例技術進行共享)。XML- Script 是聲明性布局語言,它將 HTML 元素和腳本組合在一起,形成虛擬的客戶端控件。最終,XML- Script 為客戶端頁面引入了邏輯處理和功能。

使用聲明性語言創作網頁和表單有幾個優點。通過 采用此方式,服務器端組件可以更方便地生成頁面和表單,而不必生成實際的 Visual Basic®、C# 或 JavaScript 代碼。此外,對於諸如 Visual Studio® 這樣的創作工具,聲明性標記就其本質而言 更容易進行設計。從體系結構角度來看,采用聲明標記的方式,所指定的是頁面元素的行為,而不是這些 元素如何實現這類行為。這樣,就可以創建更多的抽象層。

第一個利用這種模型的具體編程環境 是 ASP.NET(從版本 1.0 開始)。正如大多數 Web 開發人員現在所知的,ASP.NET 頁通常是在一、兩個 文件中進行編寫的:一個 .aspx 標記文件和一個可選的代碼隱藏文件。代碼隱藏文件中包含了以任何受 支持的編程語言(通常是 Visual Basic 或 C#)所編寫的類文件。.aspx 標記文件包含形成頁面結構的 HTML 標記、ASP.NET 控制標記和文字(它還可以包含代碼)。此文本將在運行時進行分析,並轉換成頁 類。這樣的頁類,在與代碼隱藏類和一些系統生成的代碼組合之後,共同形成可執行代碼,以處理任何提 交的數據,並生成響應,然後將其發送回客戶端。

雖然這個總體模型為絕大多數 ASP.NET 開發人 員所知,但還是存在很多只有少部分開發人員有深入了解的“黑洞”。MSDN®、相關書籍 和在線文章對頁面機制的各個方面進行了解釋,但仍然缺少對頁面內部機制進行的全面而統一的介紹。如 果看一看 ASP.NET 頁的 HTML 源代碼,就會發現很多您可能幾乎不了解的隱藏字段和自動插入的 JavaScript 代碼塊。但是,正是在這些字段和代碼塊的支持下,網頁才能正常工作。在本專欄中,我將 分析 ASP.NET 頁所生成的客戶端源代碼。我不單要討論如視圖狀態這類大家熟悉的隱藏字段,而且還會 涉及到一些少有人知的隱藏字段,例如,控件狀態、事件驗證、事件目標和參數,以及系統提供的腳本代 碼。

我在此處討論的很多實現細節均是針對當前的 ASP.NET 版本而言的。這些細節在將來的版本 中會有所更改(相對於過去的版本已有了更改),因此您不應當構建任何依賴於不成文細節的運行代碼。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved