如何在VS 2012中使用MSBuild命令行发布我的WCF服务库?

时间:2013-05-23 13:43:32

标签: wcf msbuild-4.0

我想使用MSBuild命令行和VS2012发布我的WCF服务库,我不想右键单击 - >发布网站,而是想使用命令提示符(MSBuild)发布它。 MSBuild需要哪些先决条件? 我没有windows azure,有必要安装windows azure吗? 我能知道实现这个目标吗? 我是MSBuild的新手,我能知道如何逐步实现这项任务吗? 我想要.svc文件,bin文件夹和web配置文件中的所有dll都出现在已发布的文件夹中。 请帮帮我。

3 个答案:

答案 0 :(得分:2)

我找到了我的问题的答案,参考如下链接, “http://www.asp.net/mvc/tutorials/deployment/visual-studio-web-deployment/command-line-deployment” 使用命令行“msbuild C:\ ContosoUniversity \ ContosoUniversity.sln / p:DeployOnBuild = true / p:PublishProfile = Test”

答案 1 :(得分:1)

您的解决方案很好,可以直接部署到您的主机(不要忘记包含您的构建配置,以便它发布正确的配置转换)。

另一种选择是将您的网站“发布”到本地文件夹,然后将其单独上传到您的主机。这也使您有机会以zip格式存档网站,进行发布检查和故障排除。

你可以这样做:

<MSBuild Projects="WebProject.csproj"
   Targets="Rebuild;_WPPCopyWebApplication"
   Properties="WebProjectOutputDir=WebProject\;UseWPP_CopyWebApplication=True;PipelineDependsOnBuild=False;" />

如果您遇到问题,请在publishing WCF, ASP.NET and MVC projects上了解更多详情。

答案 2 :(得分:0)

你可以试试这个。

首次使用手动生成svc文件,然后将其添加到项目中。

内容包括=&#34; * .svc&#34; ----使用VS Publish Option生成的文件名更改此项。

<ItemGroup>
  <Content Include="*.svc">
    <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  </Content>
</ItemGroup>
<ItemGroup>
  <WebConfig Include="App.config" />
</ItemGroup>
<Target Name="AfterBuild">
  <Copy SourceFiles="@(WebConfig)" DestinationFiles="$(OutDir)web.config" />
</Target>