CompilationMode 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
定义一些常量以指定 ASP.NET 应如何编译 .aspx 页和 .ascx 控件。
public enum class CompilationMode
public enum CompilationMode
type CompilationMode =
Public Enum CompilationMode
- 继承
字段
Always | 2 | 应始终编译页面。 |
Auto | 0 | 如果可能,ASP.NET 将不编译页面。 |
Never | 1 | 在任何情况下都不应动态编译页面或控件。 |
示例
以下示例演示如何使用 CompilationMode
page 指令来指示绝不应编译页面。
<%@ 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
页面设置为从不使用 属性进行编译,可以在编译过程中取消指定页面的资格,从而提高性能。 若要定义指定不应在页面级别编译.aspx、.ascx 或 .master 文件的页面特定 CompilationMode
属性,可以使用如下所示的指令:
<%@ page compilationMode="never" %>
还可以在配置文件中指定编译模式。 配置 PagesSection 节对象标识特定于页面的配置设置。 页面配置节元素可以在配置文件的计算机、站点、应用程序和子目录级别声明。
CompilationMode
如果 设置为 Never
,并且页面包含需要编译的脚本块或代码构造,ASP.NET 返回错误,并且页面不会运行。