我在 VS 2013 中混合了 web 和 windows 项目。我有一个解决方案来构建所有项目。出于测试目的,我想将一些 Web 项目自动部署到本地文件夹中。我可以手动执行此操作,右键单击菜单并选择发布...
我创建了看起来像的发布配置文件
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>FileSystem</WebPublishMethod>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish />
<LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<publishUrl>$(MSBuildThisFileDirectory)..\..\bin\PublishFolder\</publishUrl>
<DeleteExistingFiles>True</DeleteExistingFiles>
</PropertyGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)
我可以使用 msbuild 从命令行发布
msbuild C:\work\Source\AppManager\SereverManager.csproj /p:DeployOnBuild=true /p:PublishProfile=Local
Run Code Online (Sandbox Code Playgroud)
这也给了我设计的结果。
我想做的是结合项目构建和发布。这意味着我希望每次构建项目时自动部署。
我尝试设置批处理文件并从构建后事件调用 msbuild,但这会导致 VS 冻结,甚至不确定这是否是正确的方法。每次构建项目时是否可以修改我的 csproj 文件以发布?