ASP.NET 预编译站点 摘抄

默认情况下,在用户首次请求资源(如网站的一个页)时,将动态编译 ASP.NET 网页和代码文件。第一次编译页和代码文件之后,会缓存编译后的资源,这样将大大提高随后对同一页提出的请求的效率。

ASP.NET 还可以预编译整个站点,然后再提供给用户使用。这样做有很多好处,其中包括:

可以加快用户的响应时间,因为页和代码文件在第一次被请求时无需编译。这对于经常更新的大型站点尤其有用。

可以在用户看到站点之前识别编译时 bug。

可以创建站点的已编译版本,并将该版本部署到成品服务器,而无需使用源代码。

就地预编译 ASP.NET 网站

打开一个命令窗口并定位到包含 .NET Framework 的文件夹。

.NET Framework 将安装在以下位置。

%windir%\Microsoft.NET\Framework\version

通过在命令提示符处键入以下内容来运行 aspnet_compiler 命令。

aspnet_compiler -v /virtualPath

virtualpath 参数指示网站的 Internet 信息服务 (IIS) 虚拟路径。

- 或 -

如果您的网站不是 IIS 应用程序,并因此 IIS 元数据库中没有项,请在命令提示符处键入以下命令。

aspnet_compiler -p physicalOrRelativePath -v /

在这种情况下,physicalOrRelativePath 参数是指网站文件所在的完全限定目录路径,或者相对于当前目录的路径。在 physicalOrRelativePath 参数中允许使用句点 (.) 运算符。-v 开关指定一个根目录,编译器将使用该目录来解析应用程序根目录引用,例如,用代字号 (~) 运算符。当您为 -v 开关指定值 / 时,编译器将以物理路径为根目录来解析路径。

预编译 ASP.NET 网站以进行部署

打开一个命令窗口并定位到包含 .NET Framework 的文件夹。

.NET Framework 将安装在以下位置。

%windir%\Microsoft.NET\Framework\version

运行 aspnet_compiler 命令,将源指定为虚拟路径或物理路径,指定目标文件夹,并指定一个开关以指示是要同时编译代码和 .aspx 页(默认设置)还是只编译代码。

aspnet_compiler -v virtualPath targetPath

如果您的网站不是 IIS 应用程序,并因此 IIS 元数据库中没有项,请为 -v 开关使用下面的值:

aspnet_compiler -p physicalOrRelativePath -v / targetPath

如果要预编译该站点以进行部署和更新,请包括 -u 开关,如下面的代码示例所示。

aspnet_compiler -p physicalOrRelativePath -v / targetPath -u

targetPath 参数是物理路径。