5

我想使用带有 VS2012 的 MSBuild 命令行发布我的 WCF 服务库,我不想右键单击-> 发布网站,而是想使用命令提示符(MSBuild)发布它。

MSBuild 需要哪些先决条件?

我没有windows azure,需要安装windows azure吗?

我是 MSBuild 的新手,我想逐步说明如何完成此操作?

我希望 .svc 文件、bin 文件夹中的所有 dll 和 web 配置文件都存在于已发布的文件夹中。

4

3 回答 3

3

我通过以下链接的参考找到了我的问题的答案,“ 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"

于 2013-05-24T08:25:48.643 回答
1

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

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

你可以这样做:

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

如果您遇到困难,还有更多关于发布 WCF、ASP.NET 和 MVC 项目的详细信息。

于 2013-06-12T05:18:06.733 回答
0

你可以试试这个。

svc 文件是第一次使用时手动生成的,然后添加到项目中。

Content Include="*.svc" ---- 用 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>
于 2014-09-24T21:04:53.940 回答