有没有办法像visual studio那样,用asp.net发布web应用程序?
发布于 2011-01-25 06:41:29
在Psake中,您可以使用函数exec来运行程序。通过此任务/函数,您可以构建、编译和发布web应用程序
您可以执行asp_compiler来生成项目/解决方案
Exec { aspnet_compiler.exe }有关aspnet_compiler.exe的确切语法和参数,请参阅msdn站点
我找到了一个演示如何做的例子:
http://blog.developwithpassion.com/2008/10/30/interested-in-trading-in-your-nant-builds-a-teaser/
发布于 2012-04-09 07:49:31
根据this post的说法,这是发布web应用程序的另一种方式。我已经使用这种技术发布了一个.asmx web服务。诀窍是_CopyWebApplication msbuild目标,它为您的web应用程序生成可分发文件。
# ...setup properties
task PublishWebService -depends Compile {
$output_dir = "$build_dir\$configuration\Web"
$output_bin_dir = "$output_dir\bin\"
msbuild $webservice_project_file /t:ResolveReferences /t:_CopyWebApplication /p:Configuration=$configuration /p:WebProjectOutputDir="..\$output_dir" /p:OutDir="..\$output_bin_dir"
if (-not (Test-Path $web_service_inetpub_dir)) {
mkdir $web_service_inetpub_dir
}
copy $output_dir\* -destination $web_service_inetpub_dir -recurse -force
"Publish OK!"
}有关在this post脚本中设置和拆除IIS站点和应用程序池的一些信息,请参阅psake。
更新:我发现以下命令工作得更好一些。我在上面发布的那个没有正确地应用web.config转换。
# ...
msbuild /t:Rebuild /p:OutDir=..\$output_dir\ /p:Configuration=$build_configuration /p:UseWPP_CopyWebApplication=True /p:PipelineDependsOnBuild=False /p:TrackFileAccess=false "$web_app_project_file"
# ...
copy $output_dir\_PublishedWebsites\$web_app_project_name\* -destination $inetpub_dir -recurse -force发布于 2011-02-08 17:14:27
我使用的是IIS4.0中的build in packaging和.net上的Web部署工具。下面是在PSake中使用它的代码片段:
https://stackoverflow.com/questions/4768190
复制相似问题