ASP.NET中的Inherits、CodeFile、CodeBehind的區(qū)別詳解
Inherits、CodeFile、CodeBehind
在 ASP.NET 中使用代碼隱藏方法來設(shè)計Web 窗體,可使頁代碼能夠更清晰地從 HTML 內(nèi)容中分離到完全單獨的文件中。
通常一個 @page 指令如下:
Inherits="WebApplication1.WebForm1" %>
其中有三個屬性(Inherits、CodeFile、CodeBehind)非常容易混淆,下面分別給予說明。
Inherits(繼承的意思)
msdn解釋:定義供頁繼承的代碼隱藏類。 它可以是從 Page 類派生的任何類。 此特性與 CodeFile 特性一起使用,后者包含指向代碼隱藏類的源文件的路徑。 Inherits 特性在使用 C# 作為頁面語言時區(qū)分大小寫,而在使用 Visual Basic 作為頁面語言時不區(qū)分大小寫。
如果 Inherits 特性不包含命名空間,ASP.NET 將檢查 ClassName 特性是否包含命名空間。 如果包含,ASP.NET 將嘗試使用 ClassName 特性的命名空間加載 Inherits 特性中引用的類。 (這假定 Inherits 特性和 ClassName 特性使用同一命名空間。)
Inherits 屬性用于定義當(dāng)前 Web 窗體所繼承的代碼隱藏類(該類是 System.Web.UI.Page 的派生類)。
這個 inherits 屬性只用于采用代碼隱藏方式編寫的 Web 窗體,也就是,如果你的代碼全都是在 Web 窗體的
標(biāo)簽中,就不必用這個屬性了。
CodeFile
msdn解釋:指定指向頁引用的代碼隱藏文件的路徑。 此特性與 Inherits 特性一起使用,用于將代碼隱藏源文件與網(wǎng)頁相關(guān)聯(lián)。 此特性僅對編譯的頁有效。
此特性用于網(wǎng)站項目。
Codebehind
msdn解釋:指定包含與頁關(guān)聯(lián)的類的已編譯文件的名稱。 該特性不能在運行時使用。此特性用于 Web 應(yīng)用程序項目。
Codebehind 屬性并不是一個真正的 ASP.NET 屬性,在ASP.NET 文檔中是找不到它的。
它其實只是一個 Visual Studio .NET 屬性,
Visual Studio .NET 就是借用這個屬性來很好地跟蹤管理項目中的 Web 窗體和與之相對的代碼隱藏文件,
比如當(dāng)你在設(shè)計環(huán)境中往 Web 窗體上放入一個服務(wù)器控件時,
Visual Studio .NET 將自動找到與該 Web 窗體相對應(yīng)的代碼隱藏文件,并自動插入相關(guān)的代碼。
- 使用基于Node.js的構(gòu)建工具Grunt來發(fā)布ASP.NET MVC項目
- ASP.NET MVC3手把手教你構(gòu)建Web
- ASP.NET性能優(yōu)化之構(gòu)建自定義文件緩存
- Asp.net TreeView來構(gòu)建用戶選擇輸入的方法 推薦
- ASP.NET2.0+SQL Server2005構(gòu)建多層應(yīng)用
- ASP.NET MVC+EF框架+EasyUI實現(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ǒng)之前端頁面框架構(gòu)建源碼分享
相關(guān)文章
asp.net中SqlCacheDependency緩存技術(shù)概述
這篇文章主要介紹了asp.net中SqlCacheDependency緩存技術(shù)概述,是大型web程序設(shè)計中常用的技術(shù),本文對此進行了較為詳細的描述,需要的朋友可以參考下2014-08-08ASP.NET2.0緩存(Cache)技術(shù)深入理解
緩存技術(shù)是ASP.NET2.0非常重要的一個特性,它提供了一種非常好的本地數(shù)據(jù)緩存機制,從而有效的提高數(shù)據(jù)訪問的性能2012-11-11asp.net SqlHelper數(shù)據(jù)訪問層的使用
如果不使用數(shù)據(jù)訪問層,那么你的代碼里會出現(xiàn)很多SqlConnection、SqlCommand、SqlDataReader、Open、 Close……這些類和方法,而且代碼量很大,讓你不勝其煩,而且代碼寫起來,其實都是體力活,沒有技術(shù)含量。2008-09-09.NET的動態(tài)編譯與WS服務(wù)調(diào)用詳解
這篇文章介紹了.NET的動態(tài)編譯與WS服務(wù)調(diào)用詳解,有需要的朋友可以參考一下,希望對你有所幫助2013-07-07頁面間隔半秒鐘更新時間 Asp.net使用Comet開發(fā)http長連接示例分享
Comet(Reverse AJAX)主要是通過HTTP長連接, 保持和服務(wù)器的連接,實現(xiàn)Server PUSH 和雙向通信,下面通過示例學(xué)習(xí)他的使用方法2014-01-01Community Server專題二:體系結(jié)構(gòu)
Community Server專題二:體系結(jié)構(gòu)...2007-03-03.NET CORE中使用AutoMapper進行對象映射的方法
這篇文章主要給大家介紹了關(guān)于.NET CORE中使用AutoMapper進行對象映射的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用.NET CORE具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04