九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
ASP.NET頁面支持的指令
頁面的處理指令
頁面指令的處理用于配置執(zhí)行該頁面的運(yùn)行時(shí)環(huán)境。在ASP.NET中,指令可以位于頁面的任何位置,但良好且常見的習(xí)慣是將其置于文件的開始部分。除此,頁面指令的名稱是不區(qū)分大小寫的,且指令的屬性(attribute)值也不必加引號(hào)。@Page是ASP.NET中最重要的也是最常用的指令。表3.4列出了所有ASP.NET指令。 【101~102】
表3.4 ASP.NET頁面支持的指令
指 令
說 明
@Assembly
用于將程序集鏈接到當(dāng)前頁面或用戶控件上
@Control
用于定義控件特有的屬性(attribute),這些屬性會(huì)控制控件編譯器的行為
@Implements
用于指示當(dāng)前頁面或當(dāng)前用戶控件實(shí)現(xiàn)指定的.NET Framework 接口
@Import
用于顯式地將命名空間導(dǎo)入到頁面或用戶控件中
@Master
用于指示將當(dāng)前頁面標(biāo)識(shí)為ASP.NET母版頁(詳見第6章)。ASP.NET 1.x不支持該指令
@MasterType
當(dāng)通過Master屬性(property)訪問ASP.NET母版頁時(shí),它會(huì)為該母版頁提供一種創(chuàng)建強(qiáng)類型引用的方式(詳見第6章)。ASP.NET 1.x不支持該指令
@OutputCache
用于控制頁面或用戶控件的輸出緩存策略(詳見第16章)
@Page
用于定義頁面特有的屬性,以便控制處理該頁面的頁面編輯器和語言解析器的行為
@PreviousPageType
提供了一種獲取之前的頁面強(qiáng)類型引用的方式,通過PreviousPage屬性便可以對(duì)之前的頁面進(jìn)行訪問
@Reference
用于將頁面或用戶控件鏈接到當(dāng)前頁面或用戶控件上
@Register
用于在頁面或控件中創(chuàng)建自定義標(biāo)簽。新的標(biāo)簽(包括前綴和名稱)會(huì)將命名空間和用戶定義的控件關(guān)聯(lián)起來
 
除@Page、 @PreviousPageType、@Master、@MasterType和@Control外,所有指令都可以在頁面和控件中聲明。@Page和 @Control是互斥的:@Page僅能用在.aspx文件中,而@Control指令僅能用在.ascx文件中。@Master用于定義一種非常特殊的頁面——母版頁(master page)。
處理指令的語法較特殊,但對(duì)于所有指令類型都是一致的。多個(gè)屬性(attribute)必須用空白分割,屬性與值間的等號(hào)(=)兩邊不能有空白,如下所示:
<%@ Directive_Name attribute="value" [attribute="value" … ] %> 【103】
每種指令都有自己類型化的屬性集合。將錯(cuò)誤類型的值賦給一個(gè)屬性,或在某個(gè)屬性中使用錯(cuò)誤的屬性,都會(huì)導(dǎo)致編譯錯(cuò)誤。
要點(diǎn):指令的屬性內(nèi)容總是以純文本的形式被解析。然而,對(duì)于某些屬性,應(yīng)包含能夠被解析為特定.NET Framework類型的值。當(dāng)ASP.NET頁面被解析時(shí),所有指令屬性
會(huì)被提取,并存儲(chǔ)在一個(gè)字典中。屬性的名稱和數(shù)目必須與該指令所對(duì)應(yīng)模式相匹配。只要用字符串表示的屬性值能夠被轉(zhuǎn)換為目標(biāo)類型,那么它便是有效的。例如,如果某個(gè)屬性只接受布爾(Boolean)類型的值,則只有true和false是有效的。
@Page指令
@Page指令只能在.aspx頁面中使用,若在其他ASP.NET頁(如控件和Web服務(wù))中使用,會(huì)導(dǎo)致編譯錯(cuò)誤。每個(gè).aspx文件最多只能包含一個(gè)@Page指令。雖然從語法的角度看,沒有必要強(qiáng)制要求指定該指令,但實(shí)際幾乎所有復(fù)雜的頁都這樣做。
@Page指令大約有30個(gè)屬性,它們從邏輯上可以分為三類:編譯(詳見表3.5)、頁面整體行為(詳見表3.6)和頁面輸出(詳見表3.7)。每個(gè)ASP.NET頁在第一次請(qǐng)求時(shí)進(jìn)行編譯,實(shí)際發(fā)送給瀏覽器的HTML是類的方法生成的,而這些類也是動(dòng)態(tài)生成的。表3.5所列的屬性用于對(duì)編譯器參數(shù)進(jìn)行調(diào)整,并能夠選擇要使用的語言。
表3.5 用于頁面編譯的@Page指令屬性
屬 性
說 明
ClassName
用于指定頁面被請(qǐng)求時(shí)動(dòng)態(tài)生成的類的名稱。它必須是不帶命名空間信息的類名
CodeFile
用于提示當(dāng)前頁面代碼隱藏類的路徑。該類文件必須被部署到Web服務(wù)器上。ASP.NET 1.x不支持該屬性
CodeBehind
Visual Studio .NET 2003使用的屬性,用于提示當(dāng)前頁面代碼隱藏類的路徑。該類文件會(huì)被編譯為可部署的程序集(對(duì)2.0或更高版本的ASP.NET來說,應(yīng)使用 CodeFile屬性)
CodeFileBaseClass
用于指定頁的基類及其關(guān)聯(lián)的代碼隱藏類的基類名稱。該屬性是可選的,但如果使用了CodeFile屬性,則必須指定該屬性。ASP.NET 1.x不支持該屬性
CompilationMode
用于指示當(dāng)前頁面是否在運(yùn)行時(shí)編譯。ASP.NET 1.x不支持該屬性
CompilerOptions
用于編譯當(dāng)前頁的一系列編譯器命令行參數(shù)
Debug
一個(gè)布爾值,用于指示是否應(yīng)使用調(diào)試符號(hào)編譯該頁
Explicit
一個(gè)布爾值,用于確定在編譯該頁時(shí)是否將Visual Basic的Option Explicit模式設(shè)置為On。Option Explicit會(huì)強(qiáng)制編程人員顯式聲明所有變量。如果當(dāng)前頁所選語言不是Visual Basic .NET,該屬性將被忽略
Inherits
用于定義當(dāng)前頁要繼承的基類,它可以為從Page類派生的任何類
Language
用于在編譯時(shí)提示內(nèi)聯(lián)代碼塊(<% … %>)和<script>區(qū)段中代碼所使用的語言。支持的語言包括Visual Basic .NET、C#、JScript .NET和J#。如果沒有另外指定,則采用默認(rèn)設(shè)置Visual Basic .NET
 
續(xù)表
屬 性
說 明
LinePragmas
用于確定運(yùn)行時(shí)是否應(yīng)在源代碼中生成行雜注(line pragma)
MasterPageFile
用于指示當(dāng)前頁面的母版頁。ASP.NET 1.x不支持該屬性
Src
用于指示包含實(shí)現(xiàn)Inherits指定的基類的源文件路徑。Visual Studio和其他快速應(yīng)用程序開發(fā)(RAD)設(shè)計(jì)器不使用該屬性
Strict
一個(gè)布爾值,用于確定在編譯當(dāng)前頁時(shí),是否將Visual Basic的Option Strict設(shè)為On。若開啟Option Strict,則只允許類型安全的轉(zhuǎn)換,禁止可能導(dǎo)致數(shù)據(jù)丟失的隱式類型轉(zhuǎn)換(在這種情況下,其行為與C#一致)。如果當(dāng)前頁所選語言不是Visual Basic .NET,該屬性將被忽略
Trace
一個(gè)布爾值,用于指示是否開啟跟蹤功能。如果啟用跟蹤功能,額外的信息會(huì)被追加到頁面的輸出中。默認(rèn)值為false
TraceMode
當(dāng)啟用跟蹤功能時(shí),提示當(dāng)前頁面跟蹤消息的顯示方式。有效值為SortByTime和SortByCategory。若跟蹤功能開啟,該屬性的默認(rèn)值為SortByTime
WarningLevel
提示編譯器的警告級(jí)別,當(dāng)?shù)竭_(dá)指定的級(jí)別時(shí),編譯過程將中止。有效值為0~4
 
【104~105】
注意,Explicit和Strict屬性的默認(rèn)值從應(yīng)用程序的配置文件中讀取。通過合并所有計(jì)算機(jī)級(jí)、應(yīng)用程序級(jí)和文件夾級(jí)的設(shè)置,從而獲得ASP.NET應(yīng)用程序的設(shè)置。這表明我們還可以控制 Explicit和Strict屬性的默認(rèn)值。如果不更改默認(rèn)的配置信息(即.NET Framework安裝時(shí)創(chuàng)建的配置信息),Explicit和Strict便為默認(rèn)設(shè)置true。如果在各配置文件中,刪除與其相關(guān)的所有設(shè)置,二者的值都會(huì)變?yōu)閒alse。
可通過表3.6列出的屬性在某種程度上控制頁的整體行為和支持的功能。例如,我們可以設(shè)置自定義的錯(cuò)誤頁、禁用會(huì)話狀態(tài),以及控制頁面的事物處理行為。
表3.6 用于控制頁面行為的@Page指令屬性
屬 性
說 明
AspCompat
布爾類型的屬性。若設(shè)為true,則允許當(dāng)前頁面在單線程單元(STA)線程上執(zhí)行。該設(shè)置使頁能夠調(diào)用COM+ 1.0組件,以及用Visual Basic 6.0開發(fā)的需要訪問非托管ASP內(nèi)置對(duì)象的組件(第14章將探討該話題)
Async
如果設(shè)置為true,則生成的頁面類將派生于IHttpAsyncHandler,而不是使IHttpHandler 將某些內(nèi)建的非同步功能添加到頁中。ASP.NET 1.x不支持該屬性
 
續(xù)表
屬 性
說 明
AsyncTimeOut
用于定義處理異步任務(wù)時(shí)使用的超時(shí)時(shí)間(單位為秒)。默認(rèn)為45秒。ASP.NET 1.x不支持該屬性
AutoEventWireup
布爾類型的屬性,用于指示是否啟用頁面的事件。默認(rèn)為true。使用Visual Studio .NET開發(fā)的頁會(huì)將該屬性設(shè)置為false,頁面的事件會(huì)被分別綁定到處理程序上
Buffer
布爾類型的屬性,用于確定是否啟用HTTP響應(yīng)緩沖。默認(rèn)值為true
Description
用于提供當(dāng)前頁面的文本描述。ASP.NET頁解析器會(huì)忽略該屬性,而只用作文檔說明
EnableEventValidation
布爾類型的屬性,用于決定是否使當(dāng)前頁面生成一隱含字段,為支持事件數(shù)據(jù)驗(yàn)證的輸入字段做緩沖。默認(rèn)值為true。 ASP.NET 1.x不支持該屬性
EnableSessionState
用于定義當(dāng)前頁面處理會(huì)話數(shù)據(jù)的方式。如果設(shè)為true,則可以讀/寫會(huì)話狀態(tài)。如果設(shè)為false,則應(yīng)用程序無法使用會(huì)話數(shù)據(jù)。最后,如果設(shè)為ReadOnly,則只能讀取會(huì)話數(shù)據(jù),而不能更改
EnableViewState
布爾類型的屬性,用于指示是否在頁面請(qǐng)求間保持視圖狀態(tài)。視圖狀態(tài)是頁面調(diào)用的上下文,用于保存往返過程之間當(dāng)前頁面狀態(tài)值的集合(第15章將對(duì)此進(jìn)行講解)
EnableTheming
布爾類型的屬性,用于指示當(dāng)前頁是否對(duì)嵌入的控件應(yīng)用主題。默認(rèn)值為true。ASP.NET 1.x不支持該屬性
EnableViewStateMac
布爾類型的屬性,用于指示ASP.NET是否為特定的計(jì)算機(jī)生成身份驗(yàn)證碼,并將其追加到頁的視圖狀態(tài)中(除 Base64編碼)。屬性名中的Mac代表“計(jì)算機(jī)身份驗(yàn)證檢查”(machine authentication check,MAC)。若將該屬性設(shè)置為true,則在回發(fā)時(shí),ASP.NET會(huì)檢查視圖狀態(tài)的身份驗(yàn)證碼,以便確保其在客戶端上沒有被 篡改
ErrorPage
定義一個(gè)目標(biāo)URL,后者指向一提示頁。在頁發(fā)生未處理異常時(shí),用戶會(huì)被重定向到該位置
MaintainScrollPositionOnPostback
用于指示是否在回發(fā)之后恢復(fù)客戶端瀏覽器的滾動(dòng)條位置。默認(rèn)值為fasle
SmartNavigation
布爾類型的屬性,用于指示當(dāng)前頁是否支持Internet Explorer 5或更高版本的智能導(dǎo)航功能。智能導(dǎo)航使得頁面刷新后不會(huì)失去滾動(dòng)位置和元素焦點(diǎn)
Theme,StyleSheetTheme
用于指示為當(dāng)前頁選擇的主題(或樣式表主題)名稱。ASP.NET 1.x不支持該屬性
 
續(xù)表
屬 性
說 明
Transaction
用于指示當(dāng)前頁是否支持或需要事物。有效的值為:Disabled、NotSupported、Supported、 Required和RequiresNew。默認(rèn)情況下,事務(wù)支持是被禁用的
ValidateRequest
布爾類型的屬性,用于指示是否執(zhí)行請(qǐng)求驗(yàn)證。如果設(shè)置為true,ASP.NET將根據(jù)一硬編碼的潛在危險(xiǎn)值列表對(duì)所有的輸入數(shù)據(jù)進(jìn)行檢查。該功能有助于降低頁面的跨站點(diǎn)腳本攻擊風(fēng)險(xiǎn)。默認(rèn)值為true。ASP.NET 1.0不支持該功能
ViewStateEncryptionMode
用于指示視圖狀態(tài)的加密方式。有三個(gè)可能的枚舉值:Auto、Always和Never。默認(rèn)為Auto,這表明只有在控件要求時(shí)才加密視圖狀態(tài)。注意,每次請(qǐng)求的頁面處理都加密視圖數(shù)據(jù),會(huì)對(duì)服務(wù)器造成一定的額外開銷
 
【106~107】
表3.7中列舉的屬性用于控制為頁面生成的輸出信息格式。例如,我們可以設(shè)置頁面的內(nèi)容類型,或者盡可能地使輸出本地化。
表3.7 用于控制輸出的@Page指令屬性
屬 性
說 明
ClientTarget
用于指示ASP.NET服務(wù)器控件呈現(xiàn)其內(nèi)容時(shí)所要面向的瀏覽器
CodePage
用于指示相應(yīng)的代碼頁值。只有在使用一個(gè)代碼頁創(chuàng)建該頁(而不是使用運(yùn)行該頁的Web服務(wù)器的默認(rèn)代碼頁)時(shí),才設(shè)置該屬性。在這種情況下,將該屬性設(shè)置為開發(fā)計(jì)算機(jī)的代碼頁。代碼頁是一個(gè)符號(hào)集合,包括數(shù)字、標(biāo)點(diǎn)和其他符號(hào)。不同語言的代碼頁會(huì)有區(qū)別
ContentType
用于將響應(yīng)的內(nèi)容類型定義為標(biāo)準(zhǔn)的MIME類型。支持任何有效的HTTP內(nèi)容類型字符串
Culture
用于指示當(dāng)前頁的區(qū)域性設(shè)置。區(qū)域性信息包括書寫與排序系統(tǒng)、日歷和貨幣格式。該屬性值必須為區(qū)域性相關(guān)的名稱,即它必須包含語言和國家信息。例如,en-US就是一個(gè)有效值,而en本身則會(huì)被認(rèn)為是國家不相關(guān)的
LCID
32位的值,用于定義頁的區(qū)域標(biāo)識(shí)符。默認(rèn)情況下,ASP.NET會(huì)使用Web服務(wù)器的區(qū)域設(shè)置
ResponseEncoding
用于指示當(dāng)前頁面的編碼方案名稱。該值用于設(shè)置內(nèi)容類型HTTP標(biāo)頭的CharSet屬性。在內(nèi)部,ASP.NET會(huì)將所有字符串按Unicode處理
Title
用于指示當(dāng)前頁的標(biāo)題。對(duì)于一般的頁面作用不大,因?yàn)榭梢允褂肏TML的<title>標(biāo)簽,該屬性的定義是為了幫助開發(fā)者在內(nèi)容頁中不能訪問<title>的情況下(這取決于母版頁的結(jié)構(gòu)設(shè)計(jì)),為其設(shè)置標(biāo)題
 
續(xù)表
屬 性
說 明
UICulture
用于指定資源管理器(Resource Manager)使用的默認(rèn)區(qū)域信息名稱,以便在運(yùn)行時(shí)查找區(qū)域性特定的資源
 
不難看出,表3.7中的許多屬性與頁面的本地化有關(guān)。ASP.NET(更一般地講是.NET Framework)極大地簡化了構(gòu)建多語言的國際化應(yīng)用程序的任務(wù)。第5章會(huì)深入探討該問題。
@Assembly指令
@Assembly指令用于將某個(gè)程序集鏈接到當(dāng)前頁面,使其類和接口可以在該頁面上使用。在ASP.NET編譯該頁時(shí),會(huì)有幾個(gè)默認(rèn)的程序集被鏈接進(jìn)去。因此,只有在需要鏈接一個(gè)非默認(rèn)程序集時(shí),才應(yīng)使用該指令。表3.8列出了自動(dòng)提供給編譯器的.NET程序集。 【108】
表3.8 默認(rèn)鏈接的程序集
程序集文件名
說 明
Mscorlib.dll
提供.NET Framework的核心功能,包括類型、AppDomain和運(yùn)行時(shí)服務(wù)
System.dll
提供另一組系統(tǒng)服務(wù),包括正則表達(dá)式、編譯、本地方法、文件輸入/輸出和網(wǎng)絡(luò)
System.Configuration.dll
定義了讀/寫配置文件數(shù)據(jù)的類。ASP.NET 1.x不包含該程序集
System.Data.dll
定義了數(shù)據(jù)容器和數(shù)據(jù)訪問類,包括整個(gè)ADO.NET框架
System.Drawing.dll
實(shí)現(xiàn)了GDI+功能
System.EnterpriseServices.dll
提供允許被服務(wù)的組件和COM+之間進(jìn)行交互的類
System.Web.dll
該程序集實(shí)現(xiàn)了ASP.NET核心服務(wù)、控件和類
System.Web.Mobile.dll
該程序集實(shí)現(xiàn)了ASP.NET核心移動(dòng)服務(wù)、控件和類。.NET Framework的1.0版安裝時(shí)不包含該程序集
System.Web.Services.dll
包含驅(qū)動(dòng)Web服務(wù)運(yùn)行的核心代碼
System.Xml.dll
實(shí)現(xiàn)了.NET Framework的XML功能
System.Runtime.Serialization.dll
定義了.NET序列化功能的API。在ASP.NET 2.0應(yīng)用程序中,該程序集是開發(fā)者額外添加的最常用程序集之一。ASP.NET 3.5之前的版本沒有引入該程序集
System.ServiceModel.dll
定義了Windows Communication Foundation(WCF)服務(wù)的類和結(jié)構(gòu)。ASP.NET 3.5之前的版本沒有引入該程序集
System.ServiceModel.Web.dll
定義了ASP.NET和AJAX需要使用的附加類。ASP.NET 3.5之前的版本沒有引入該程序集
System.WorkflowServices.dll
定義了工作流(Workflow)和WCF服務(wù)需要的類。ASP.NET 3.5之前的版本沒有引入該程序集
 
除這些程序集外,ASP.NET運(yùn)行庫還會(huì)自動(dòng)將 Web應(yīng)用程序Bin子目錄中的程序集鏈接到所有頁面上。通過編輯計(jì)算機(jī)級(jí)web.config文件中的設(shè)置,可以更改、擴(kuò)展或限制默認(rèn)的程序集列表。這種更改將作用于運(yùn)行在該Web服務(wù)器上的所有ASP.NET應(yīng)用程序。此外,還可以編輯應(yīng)用程序特定的web.config文件,逐一對(duì)每個(gè)應(yīng)用程序的程序集列表進(jìn)行定制。為防止將Bin目錄中存在的所有程序集都鏈接到頁面,可以在根配置文件中刪除以下代碼:
<add assembly="*" /> 【109】
警示:對(duì)于ASP.NET應(yīng)用程序,整個(gè)配置屬性集都在計(jì)算機(jī)級(jí)進(jìn)行了設(shè)置。最初,服務(wù)器計(jì)算機(jī)上運(yùn)行的所有應(yīng)用程序共享相同的設(shè)置。獨(dú)立的應(yīng)用程序可以在其自身的web.config文件中重寫其中的某些設(shè)置。每個(gè)應(yīng)用程序可以在其根目錄放置一個(gè)web.config文件,在應(yīng)用程序特定的子目錄下放置其他特殊化的web.config副本。每一頁的設(shè)置取決于從計(jì)算機(jī)級(jí)到當(dāng)前文件夾路徑發(fā)現(xiàn)的所有配置文件中的全部設(shè)置。在ASP.NET 1.x中,machine.config文件包含完整的默認(rèn)設(shè)置樹。而在ASP.NET 2.0中,與Web應(yīng)用程序有關(guān)的設(shè)置數(shù)據(jù)被移到了web.config文件中,與machine.config處于同一系統(tǒng)文件夾。該文件夾叫 CONFIG,位于ASP.NET安裝路徑下:%WINDOWS%\Microsoft. Net\Framework\[version] 。
要將所需程序集鏈接到頁面,可使用如下語法:
<%@ Assembly Name="AssemblyName" %>
<%@ Assembly Src="assembly_code.cs" %>
@Assembly指令支持兩個(gè)互斥屬性:Name 和Src。Name用于提示鏈接到頁面的程序集名稱。該名稱不能包含路徑和擴(kuò)展名。Src用于指示要?jiǎng)討B(tài)編譯并鏈接到頁面的源文件路徑。 @Assembly指令可以在頁面的主體部分出現(xiàn)多次。事實(shí)上,對(duì)于每個(gè)要鏈接的程序集來說,都需要分別添加指令。Name和Src不能同時(shí)在一個(gè) @Assembly指令中使用,但對(duì)于頁面中定義的不同指令,則可以分別選擇。
提示:雖然 Name指向的是一個(gè)已存在的且準(zhǔn)備加載的程序集,但Name與Src在性能方面的差別很小。使用Src引用的源文件只在首次被請(qǐng)求時(shí)編譯一次。 ASP.NET運(yùn)行庫會(huì)將源文件與動(dòng)態(tài)編譯的程序集進(jìn)行映射,并在源文件被更改前,一直使用已編譯的代碼。也就是說,在應(yīng)用程序級(jí)的首次調(diào)用過后,無論使用Name還是Src,對(duì)頁面性能的影響都是相同的。
@Import指令
@Import指令用于將指定的命名空間鏈接到頁面,以便所有已定義類型可以在頁面訪問,而不必使用完全限定名(fully qualified name)。例如,為創(chuàng)建一ADO.NET DataSet類的實(shí)例,可以導(dǎo)入System.Data命名空間,也可以像下面這樣使用完全限定名:
System.Data.DataSet ds = new System.Data.DataSet(); 【110】
一旦將System.Data命名空間引入當(dāng)前頁,我們就可以像下面這樣更自然地編寫代碼:
DataSet ds = new DataSet();
@Import指令的語法是自描述的:
<%@ Import namespace="value" %>
@Import可以在頁面主體中多次使用。 ASP.NET的@Import指令相當(dāng)于C#的using語句,也相當(dāng)于Visual Basic .NET的Import語句。回顧非托管的C/C++,可以說該指令所起的作用幾乎與#include指令相同。
注意:@Import只能幫助編譯器解析類的名稱,并不會(huì)自動(dòng)鏈接所需程序集。使用@Import指令可以縮短類的名稱,但倘若包含該類的程序集未被正確地鏈接,會(huì)引發(fā)編譯器的類型錯(cuò)誤。如果程序集尚未被鏈接,使用“完全限定類名”也無濟(jì)于事,因?yàn)榫幾g器需要類型的定義。您可能已經(jīng)注意到了,程序集和命名空間的名稱往往是一致的。但請(qǐng)記住,這純屬巧合,程序集與命名空間是完全不同的實(shí)體,分別需要相應(yīng)的指令。
例如,為連接SQL Server數(shù)據(jù)庫并獲取某些無連接數(shù)據(jù),我們需要導(dǎo)入以下兩個(gè)命名空間:
<%@ Import namespace="System.Data" %>
<%@ Import namespace="System.Data.SqlClient" %>
我們需要System.Data命名空間以便使用 DataSet和DataTable類,而通過System.Data.SqlClient命名空間來準(zhǔn)備并發(fā)送命令。在這種情況下,我們不需要另外鏈接程序集,因?yàn)镾ystem.Data.dll程序集是默認(rèn)鏈接的。
@Implements指令
@Implements指令用于指示當(dāng)前頁面實(shí)現(xiàn)的.NET Framework中的特定接口。接口是一組邏輯上相關(guān)的函數(shù)簽名,作為各組件暴露其函數(shù)集合的一種契約。與抽象類(abstract class)不同,接口不提供代碼或執(zhí)行功能。若在ASP.NET頁中實(shí)現(xiàn)某個(gè)接口,要在<script>區(qū)段中定義所需方法和屬性。 @Implements指令的語法如下所示:
<%@ Implements interface="InterfaceName" %> 【111】
如果頁中需要實(shí)現(xiàn)多種接口,@Implements 指令可以在該頁中出現(xiàn)多次。注意,如果決定將所有頁的邏輯定義在單獨(dú)的文件中,則不能使用該指令來實(shí)現(xiàn)接口,而要在代碼隱藏類中進(jìn)行。
@Reference指令
@Reference指令用于建立當(dāng)前頁與指定頁或用戶控件間的動(dòng)態(tài)鏈接。該功能在跨頁面通信方面發(fā)揮著重大作用。我們可通過它來創(chuàng)建用戶控件的強(qiáng)類型實(shí)例。讓我們來看一下它的語法。
@Reference指令可以多次出現(xiàn)在頁面中,并有兩個(gè)互斥屬性:Page和Control。這兩個(gè)屬性都用于指定源文件的路徑:
<%@ Reference page="source_page" %>
<%@ Reference control="source_user_control" %>
Page屬性用于指向某個(gè).aspx源文件,而 Control屬性包含的是.ascx用戶控件的路徑。在這兩種情況下,被引用的源文件都會(huì)被動(dòng)態(tài)編譯進(jìn)程序集中,如此一來,在編程時(shí),可以在主動(dòng)引用頁面中使用源文件中定義的類。在運(yùn)行時(shí),ASP.NET頁面是.NET Framework類的實(shí)例,帶有由方法和屬性組成的特定接口。當(dāng)主動(dòng)引用頁面執(zhí)行時(shí),被引用頁面變?yōu)楸硎?aspx源文件的類,可以按需要對(duì)其進(jìn)行實(shí)例化和編碼。注意,為使該指令發(fā)揮作用,被引用頁面必須與主調(diào)頁面處于一個(gè)域中。不允許跨站點(diǎn)調(diào)用,且Page和Control屬性只接受相對(duì)虛擬路徑。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
從asp到asp.net之快速轉(zhuǎn)型[轉(zhuǎn)] (ASP(.net) X-在線 技術(shù)論壇)
ASP.NET指令
ASP.NET頁面解析(2)
Asp.net的常用服務(wù)器控件屬性詳解 - 免費(fèi)建站|免費(fèi)空間|網(wǎng)站運(yùn)營|網(wǎng)站優(yōu)化-山寨站...
應(yīng)用Autofac使ASP.NET頁面獲取服務(wù)(Componets)
ASP.NET 2.0 中的資源與本地化
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服