【问题标题】:Deploy silverlight xaps to ClientBin in WSP在 WSP 中将 silverlight xaps 部署到 ClientBin
【发布时间】:2014-02-24 21:32:30
【问题描述】:

我的解决方案中有一些由其他项目构建的 xap,我需要将这些 xap 包含在生成的 WSP 中。

我有一个映射文件夹 Layouts 和一个子文件夹 ClientBin,然后在 csproj 中我有以下内容:

<ItemGroup>
  ...
  <Folder Include="Layouts\ClientBin\" />
  ...
  <Content Include="Layouts\ClientBin\*.xap" />
</ItemGroup>
...
<Target Name="BeforeLayout">
  <ItemGroup>
    <XAPFiles Include="..\..\out\$(Configuration)\bin\sl\xap\**\*.xap" />
  </ItemGroup>
  <Copy SourceFiles="@(XAPFiles)" DestinationFolder="Layouts\ClientBin" OverwriteReadOnlyFiles="true" />
</Target>

当我从目标文件夹中删除 xap 并在 VS 中打开 SP 项目时,包管理器会显示其中没有任何内容的布局文件夹。然后,当我构建时,没有一个 xap 被打包在 WSP 中,但复制操作在项目本地工作。如果我重建没有任何改变。如果我卸载并重新加载项目然后构建,WSP 确实包含我需要的文件。

这适用于我的开发箱,因为我可以确保我正在执行所有这些步骤以使包管理器满意,但它不适用于团队构建机器。我可以采取哪些步骤来确保包管理器获取这些 xap 甚至其他方式来实现我想要做的事情?

【问题讨论】:

    标签: sharepoint visual-studio-2012 wsp


    【解决方案1】:

    我在 Layouts\ClientBin 中为所有要复制的 xap 创建了空占位符。
    这不是最优的,因为它需要一些手动依赖管理,但它可以工作。

    最终结果是,当您在 VS 中打开项目时,包管理器会知道这些文件存在,并且需要将它们打包到 WSP 中。复制操作像以前一样工作,但现在新文件已打包。

    【讨论】:

      猜你喜欢
      • 2010-11-19
      • 1970-01-01
      • 2010-09-17
      • 1970-01-01
      • 2014-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-16
      相关资源
      最近更新 更多