Algo así como¿Cómo puedo publicar el sitio desde la línea de comando con algún perfil de publicación?
msbuild /t:publish [use PublishProfileName] someproject.csproj
Algo así como¿Cómo puedo publicar el sitio desde la línea de comando con algún perfil de publicación?
msbuild /t:publish [use PublishProfileName] someproject.csproj
msbuild MyProject.csproj /t:PipelinePreDeployCopyAllFilesToOneFolder /p:Configuration=Release;_PackageTempDir=C:\temp\somelocation;AutoParameterizationWebConfigConnectionStrings=false
Ver MSBuild 2010 - how to publish web app to a specific location (nant)?
Para Visual Studio 2012 puede utilizar
msbuild MySolution.sln /p:DeployOnBuild=true;PublishProfile=Production;Password=foo
Ver ASP.NET Web Deployment using Visual Studio: Command Line Deployment
Esta es una solución alternativa para lograr la solución de Pavel pero usando objetivo MSBUILD en un archivo MSBUILD:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="build"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
<OutputDirectory>$(DeploymentProject)\bin\$(Configuration)</OutputDirectory>
<OutputPath>C:\Inetpub\wwwroot</OutputPath>
</PropertyGroup>
<Target Name="build">
<MSBuild
Projects="Your Solution File.sln"
Properties="Configuration=$(Configuration);DeployOnBuild=true;DeployTarget=Package;_PackageTempDir=$(OutputPath);AutoParameterizationWebConfigConnectionStrings=false"
>
</MSBuild>
</Target>
</Project>
Mi web.config termina como esto después de ejecutar ese comando msbuild: \t
@Jhonny Necesita el parámetro AutoParameterizationWebConfigConnectionStrings, he actualizado mi respuesta. –
¡Funcionó bien para mí, muchas gracias! –