CompilationMode 列舉

定義

定義了常數,指定 ASP.NET 應該如何編譯.aspx頁面和 .ascx 控制項。

public enum class CompilationMode
public enum CompilationMode
type CompilationMode = 
Public Enum CompilationMode
繼承
CompilationMode

欄位

名稱 Description
Auto 0

ASP.NET 若可能,將不會編譯該頁面。

Never 1

頁面或控制項絕不應該被動態編譯。

Always 2

頁面應該始終被編譯。

範例

以下範例示範如何使用 CompilationMode 頁面指令來表示頁面永遠不應被編譯。

<%@ Page Language="C#" compilationMode="never" %>
<%@ Import namespace="System.IO" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>CompilationMode Example</title>
</head>
<body>
<form id="Form1" runat="server">

Script blocks are not allowed on this page. 
Any server side code that requires compilation 
contained in this page would cause the page to fail
</form>
</body>
</html>
<%@ Page Language="VB" compilationMode="never" %>
<%@ Import namespace="System.IO" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>CompilationMode Example</title>
</head>
<body>
<form id="Form1" runat="server">
Script blocks are not allowed on this page. 
Any server side code that requires compilation 
contained in this page would cause the page to fail
</form>
</body>
</html>

備註

CompilationMode列舉值決定執行時應編譯頁面或控制項。 當未指定編譯模式時,預設值為 Always。 使用 Never 該屬性設定頁面永不編譯,透過在編譯過程中取消指定頁面資格來提升效能。 若要定義一個頁面專屬 CompilationMode 屬性,該屬性指定 .aspx、.ascx 或 .master 檔案不應在頁面層級編譯,您可以使用以下指令:

<%@ page compilationMode="never" %>

編譯模式也可以在設定檔中指定。 PagesSection配置區塊物件用來識別頁面特定的設定設定。 頁面設定區段元素可在設定檔的機器、站點、應用程式及子目錄層級宣告。

如果 CompilationMode 設為 Never,且頁面包含需要編譯的腳本區塊或程式碼結構,ASP.NET 會返回錯誤,頁面無法執行。

適用於

另請參閱