5

我正在尝试这个。我已经建立了 asp.net 网站。当我通过 VS2008 发布到 IIS 时,它工作正常。假设我的网站位于 c:\projects\Website1\ 我想将其发布到 c:\Inetpub\wwwroot\WebsiteOne

我正在尝试模仿工作室的发布。那就是发布并删除里面的任何东西。

我试过这个:aspnet_compiler -v/WebsiteOne -fc:\Inetpub\wwwroot\WebsiteOne

错误:error ASPRUNTIME: 预编译目标目录 (c:\Inetpub\wwwroot\WebsiteOne) 不能与源应用程序目录 (c:\inetpub\wwwroot\WebsiteOne) 位于同一树中。

当我尝试这个时:aspnet_compiler -v/WebsiteOne

我收到错误此应用程序已预编译。

任何可以让我了解如何进行网站编译和发布的人

谢谢

4

3 回答 3

5

我同时解决了这个问题。您只需要传递物理路径,因为它会从 IIS 中获取一个

aspnet_compiler -v /WebsiteOne -p c:\projects\Website1 -f c:\Inetpub\wwwroot\WebsiteOne 

以防其他人遇到同样的问题..

于 2010-07-08T15:37:56.867 回答
1

此外,您可能会考虑在解决方案文件上使用 MSBuild,并使用 Publish 目标。

无论如何,这就是 VStudio 在幕后所做的。:-)

于 2009-07-07T01:42:46.477 回答
0

来自 http://johnnycoder.com/blog/2008/01/29/getting-started-with-cruisecontrolnet/

我已经粘贴了信息,以防他的博客出现故障。

  1. 对于 Web 解决方案,将应用程序的调试和/或发布版本的 TargetPath 更新为位于源应用程序目录之外。否则,您将收到以下错误:

ASPNETCOMPILER : 错误 ASPRUNTIME: 预编译目标目录不能与源应用程序目录位于同一树中。

这可以通过修改解决方案文件中的以下内容来完成:

Debug.AspNetCompiler.TargetPath = “c:\ccnet\PrecompiledWeb\SampleWeb\”
Release.AspNetCompiler.TargetPath = “c:\ccnet\PrecompiledWeb\SampleWeb\”

或者,可以更新在应用程序 MSBuild 属性中找到的输出位置。

您可能想知道为什么更新的解决方案不会在下一个计划的构建中更新。当它起作用(并且有意义)时,只有应用于源代码控制的更改才会被拉到构建框上。

于 2012-08-23T17:32:37.450 回答