Visual Studio 2010:如何使用MSBUILD将ASP.NET Web应用程序发布到目标文件夹?

osc*_*tin 6 msbuild publish visual-studio-2010

在Visual Studio 2010中,您知道如何更改配置(调试,发布等),右键单击解决方案资源管理器中的项目,单击发布,并将所选配置的所有重要Web应用程序项目文件复制到目标文件夹以及xdt转换的web.config?好吧,我正在寻找与之相当的MSBUILD.

我向你提出的挑战:在我的命令提示符下提供我需要执行的ONE LINE以完成此任务.没有第三方计划.没有教程视频.只需一个直接命令,我可以从你的响应中逐字复制,粘贴到命令窗口,根据需要进行修改以支持我的目录结构,然后按回车键.

如果没有,那么也许有人可以提供一个完整的MSBUILD参考链接,显示我可以在命令行使用的每个命令,开关和值.

Ram*_*nas 6

将下面的ProjectPublish.MSBuild.xml文件放入(PropertyGroup根据需要更改):

<?xml version="1.0" encoding="utf-8" ?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Publish"> 
    <PropertyGroup>
        <ProjectFile>Path\To\Web.csproj</ProjectFile>
        <PublishDir>Path\For\Publish\Output</PublishDir>
        <TempDir>Path\To\Temp\Folder</TempDir>
        <BuildConfig>Release|Debug</BuildConfig>
    </PropertyGroup>

    <Target Name="Publish">
        <MSBuild Projects="$(ProjectFile)"
                 Properties="Configuration=$(BuildConfig);WebProjectOutputDir=$(PublishDir);OutDir=$(TempDir)\;BuildingProject=true"
                 Targets="ResolveReferences;_CopyWebApplication" />
    </Target>
</Project>
Run Code Online (Sandbox Code Playgroud)

从命令行(或.bat文件)调用它应该可以解决这个问题:

%windir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe ProjectPublish.MSBuild.xml
Run Code Online (Sandbox Code Playgroud)