ASP.NET中的Inherits、CodeFile、CodeBehind的區別詳解_實用技巧

來源:互聯網
上載者:User

Inherits、CodeFile、CodeBehind

在 ASP.NET 中使用程式碼後置方法來設計Web Form,可使頁代碼能夠更清晰地從 HTML 內容中分離到完全單獨的檔案中。
通常一個 @page 指令如下:

複製代碼 代碼如下:
< %@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false"
Inherits="WebApplication1.WebForm1" %>

其中有三個屬性(Inherits、CodeFile、CodeBehind)非常容易混淆,下面分別給予說明。

Inherits(繼承的意思)

msdn解釋:定義供頁繼承的程式碼後置類別。 它可以是從 Page 類派生的任何類。 此特性與 CodeFile 特性一起使用,後者包含指向程式碼後置類別的源檔案的路徑。 Inherits 特性在使用 C# 作為頁面語言時區分大小寫,而在使用 Visual Basic 作為頁面語言時不區分大小寫。

如果 Inherits 特性不包含命名空間,ASP.NET 將檢查 ClassName 特性是否包含命名空間。 如果包含,ASP.NET 將嘗試使用 ClassName 特性的命名空間載入 Inherits 特性中引用的類。 (這假定 Inherits 特性和 ClassName 特性使用同一命名空間。)

Inherits 屬性用於定義當前 Web Form所繼承的程式碼後置類別(該類是 System.Web.UI.Page 的衍生類別)。
這個 inherits 屬性只用於採用程式碼後置方式編寫的 Web Form,也就是,如果你的代碼全都是在 Web Form的
標籤中,就不必用這個屬性了。

CodeFile

msdn解釋:指定指向頁引用的程式碼後置檔案的路徑。 此特性與 Inherits 特性一起使用,用於將程式碼後置源檔案與網頁相關聯。 此特性僅對編譯的頁有效。

此特性用於網站項目。

Codebehind

msdn解釋:指定包含與頁關聯的類的已編譯檔案的名稱。 該特性不能在運行時使用。此特性用於 Web 應用程式項目。

Codebehind 屬性並不是一個真正的 ASP.NET 屬性,在ASP.NET 文檔中是找不到它的。
它其實只是一個 Visual Studio .NET 屬性,
Visual Studio .NET 就是借用這個屬性來很好地跟蹤管理項目中的 Web Form和與之相對的程式碼後置檔案,
比如當你在設計環境中往 Web Form上放入一個伺服器控制項時,
Visual Studio .NET 將自動找到與該 Web Form相對應的程式碼後置檔案,並自動插入相關的代碼。

相關關鍵詞:
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.