3

在探索了 Precompilation for Deployment 主题之后,我想增强我的构建过程。现在,我要做的是:

  • 使用 Web One Click Publish 准备网站,例如到c:\www\app目录,并且该目录在 IIS 中通过 app ( localhost/app)可用
  • 我启动aspnet_compiler.exe -v app c:\www\appprecompiled -f

现在我已经准备好预编译的应用程序c:\www\appprecompiled,一切都很好。但是我的应用程序很大,从头开始发布它(步骤 1)大约需要 5 分钟。所以我想知道是否可以避免第一步,并使用指向解决方案文件夹的源文件夹执行步骤 2(预编译)。我试过这样的事情:

aspnet_compiler.exe -v codeapp c:\code\app -f

带有 web.config 等文件的文件夹在哪里c:\code\app,基本上它是一个带有网站的项目,并且该文件夹可通过http://localhost/codeapp.

但是在启动该命令时,我收到有关缺少 global.asax 或 web.config 错误的错误:

C:\code\app\obj\debug\package\packagetmp\web.config(18): error ASPCONFIG: 使用注册为 allowDefinition='MachineToApplication' 的部分超出应用程序级别是错误的。此错误可能是由未在 IIS 中配置为应用程序的虚拟目录引起的。

为了记录,我使用应用程序,而不是虚拟目录。

那么有没有办法在一个普通的网站文件夹上执行预编译呢?

4

1 回答 1

3

我用了

aspnet_compiler -p physicalOrRelativePath -v / targetPath

来自http://msdn.microsoft.com/en-us/library/ms227976(v=VS.80).aspx并在执行之前删除了 obj 文件夹,并且预编译工作:)

于 2011-02-20T12:48:53.683 回答