Inherits、CodeFile、CodeBehind
在 ASP.NET 中使用代碼隱藏方法來(lái)設(shè)計(jì)Web 窗體,可使頁(yè)代碼能夠更清晰地從 HTML 內(nèi)容中分離到完全單獨(dú)的文件中。
通常一個(gè) @page 指令如下:
復(fù)制代碼 代碼如下:
%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false"
Inherits="WebApplication1.WebForm1" %>
其中有三個(gè)屬性(Inherits、CodeFile、CodeBehind)非常容易混淆,下面分別給予說(shuō)明。
Inherits(繼承的意思)
msdn解釋?zhuān)憾x供頁(yè)繼承的代碼隱藏類(lèi)。 它可以是從 Page 類(lèi)派生的任何類(lèi)。 此特性與 CodeFile 特性一起使用,后者包含指向代碼隱藏類(lèi)的源文件的路徑。 Inherits 特性在使用 C# 作為頁(yè)面語(yǔ)言時(shí)區(qū)分大小寫(xiě),而在使用 Visual Basic 作為頁(yè)面語(yǔ)言時(shí)不區(qū)分大小寫(xiě)。
如果 Inherits 特性不包含命名空間,ASP.NET 將檢查 ClassName 特性是否包含命名空間。 如果包含,ASP.NET 將嘗試使用 ClassName 特性的命名空間加載 Inherits 特性中引用的類(lèi)。 (這假定 Inherits 特性和 ClassName 特性使用同一命名空間。)
Inherits 屬性用于定義當(dāng)前 Web 窗體所繼承的代碼隱藏類(lèi)(該類(lèi)是 System.Web.UI.Page 的派生類(lèi))。
這個(gè) inherits 屬性只用于采用代碼隱藏方式編寫(xiě)的 Web 窗體,也就是,如果你的代碼全都是在 Web 窗體的
標(biāo)簽中,就不必用這個(gè)屬性了。
CodeFile
msdn解釋?zhuān)褐付ㄖ赶蝽?yè)引用的代碼隱藏文件的路徑。 此特性與 Inherits 特性一起使用,用于將代碼隱藏源文件與網(wǎng)頁(yè)相關(guān)聯(lián)。 此特性?xún)H對(duì)編譯的頁(yè)有效。
此特性用于網(wǎng)站項(xiàng)目。
Codebehind
msdn解釋?zhuān)褐付òc頁(yè)關(guān)聯(lián)的類(lèi)的已編譯文件的名稱(chēng)。 該特性不能在運(yùn)行時(shí)使用。此特性用于 Web 應(yīng)用程序項(xiàng)目。
Codebehind 屬性并不是一個(gè)真正的 ASP.NET 屬性,在ASP.NET 文檔中是找不到它的。
它其實(shí)只是一個(gè) Visual Studio .NET 屬性,
Visual Studio .NET 就是借用這個(gè)屬性來(lái)很好地跟蹤管理項(xiàng)目中的 Web 窗體和與之相對(duì)的代碼隱藏文件,
比如當(dāng)你在設(shè)計(jì)環(huán)境中往 Web 窗體上放入一個(gè)服務(wù)器控件時(shí),
Visual Studio .NET 將自動(dòng)找到與該 Web 窗體相對(duì)應(yīng)的代碼隱藏文件,并自動(dòng)插入相關(guān)的代碼。
您可能感興趣的文章:- 使用基于Node.js的構(gòu)建工具Grunt來(lái)發(fā)布ASP.NET MVC項(xiàng)目
- ASP.NET MVC3手把手教你構(gòu)建Web
- ASP.NET性能優(yōu)化之構(gòu)建自定義文件緩存
- Asp.net TreeView來(lái)構(gòu)建用戶(hù)選擇輸入的方法 推薦
- ASP.NET2.0+SQL Server2005構(gòu)建多層應(yīng)用
- ASP.NET MVC+EF框架+EasyUI實(shí)現(xiàn)權(quán)限管系列
- asp.net(c#)ref,out ,params的區(qū)別
- asp.net TemplateField模板中的Bind方法和Eval方法
- ASP.NET Ref和Out關(guān)鍵字區(qū)別分析
- ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后臺(tái)管理系統(tǒng)之前端頁(yè)面框架構(gòu)建源碼分享