【问题标题】:how to publish my WCF Service Library using MSBuild Command Line in VS 2012?如何在 VS 2012 中使用 MSBuild 命令行发布我的 WCF 服务库?
【发布时间】:2013-05-23 13:43:31
【问题描述】:

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

MSBuild 需要哪些先决条件?

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

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

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

【问题讨论】:

    标签: wcf msbuild-4.0


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

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

      你可以这样做:

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

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

      【讨论】:

      • 我已经阅读了您的有用博客并取得了不同程度的成功。我的一个 WCF 项目不断给我错误,“错误 MSB4057:项目中不存在目标“_WPPCopyWebApplication”。我的 csproj 不导入 Microsoft.WebApplication.targets。我尝试添加它,但它没有帮助。这是一个在过去一年内升级到 VS2012 的遗留项目。任何建议将不胜感激。
      • 很难说没有看到它,但你可以尝试使用 $(MSBuildExtensionsPath32) 而不是 $(MSBuildExtensionsPath)
      • 我从另一个 csproj 文件中复制了导入语句。我意识到它有一个没有满足的条件。删除它后,我就可以使用 _WPPCopyWebApplication 目标了。但是,现在它不会为我的 WCF 服务生成“.svc”文件。
      【解决方案3】:

      你可以试试这个。

      第一次使用手动生成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>
      

      【讨论】:

        猜你喜欢
        • 2011-04-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-02
        • 1970-01-01
        • 2014-02-02
        • 1970-01-01
        • 2011-02-21
        相关资源
        最近更新 更多