ASPNET 3.5引入一种技术,即用一个命令对整个应用程序进行预编译,这种类型的编译称为“原地预编译”。使用附带工具aspnet_compiler.exe
例如要将解决方案Wrox预编译,可以
aspnet_compiler –P “c:\Interpub\wwwroot\wrox” –v none
命令会编译每个页面,如果无错,会收到编译成功消息。
还可以实现“用于部署的预编译”,可以吧应用程序编译为某些DLL,利于部署给客户或其他地方。编译后,只需移动这些DLL和某些占位符文件,就可以让站点运转起来,即,Web站点的代码都放在DLL中了。
例如,用下面格式编译站点
aspnet_compiler –v [Application name] –p [Physical Location] [Target]
如果应用程序INETA位于c:\Websites\INETA,可以这样使用命令:
aspnet_compiler –v /INETA –p c:\Websites\INETA c:\Wrox
如果编译成功,在C:\Wrox下会看到输出。
上面例子中,-v自动应用程序虚拟路径;-p指向应用程序物理路径;最后的目录是输出位置。
在输出目录中,包含了源应用程序中的所有文件和文件结构。(该文件只是一个占位符)实际是,在bin文件夹中的Code.dll文件包含所有页面代码。
注意:预编译过程中不会编译的文件类型有:HTML文件、XML文件、XSD文件、web.config文件、文本文件。对于这些文件,若想编译到Code.dll,只要改扩展名为aspx即可。