0

我在 Visual Studio 中创建了一个功能,使用 WSPBuilder 构建 .wsp 文件,其中包含一些需要复制到 _layouts 文件夹的 aspx 文件。我在我的项目中创建了 12 个 hive 结构,将所有 xml 文件(例如 feature.xml)复制到正确的子文件夹中,将 aspx 文件放在正确的位置并构建了 .wsp 文件。

当我部署并激活该功能时,aspx 文件被复制到 _layouts 文件夹中,一切都很好。然后,SharePoint 无缘无故地做得最好并停止工作。现在,每当我部署该功能并激活它时,我注意到没有任何 aspx 文件被复制到 _layouts 文件夹中。我在日志文件中看不到任何指向问题的消息。

这是我的 feature.xml 文件:

<?xml version="1.0" encoding="utf-8"?>
<Feature  Id="3263C427-F0FA-4cad-8C7F-459F31E36D34"
          Title="Test"
          Description="Test"
          Version="1.0.0.0"
          Hidden="FALSE"
          Scope="Web"
          DefaultResourceFile="core"
          xmlns="http://schemas.microsoft.com/sharepoint/">
  <ElementManifests>
    <ElementManifest Location="CustomActions.xml" />
    <ElementManifest Location="module.xml" />
  </ElementManifests>
</Feature>

CustomActions.xml 包含一些在站点的列表设置页面上创建的链接,以便对其进行处理。问题是“module.xml”:

<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <Module Name="Page1" Url="_layouts">
    <File Url="Page1.aspx" Type="Ghostable" />    
  </Module>
  <Module Name="Page2" Url="_layouts">
    <File Url="Page2.aspx" Type="Ghostable" />
  </Module>
</Elements>

我无法发现我在这里做错了什么 - 事实上,整个部署在上述文件中运行良好,所以我只是对它为什么停止工作感到困惑。我像往常一样重新追踪我的脚步,并思考我是否做了一些事情来导致这种情况,但我没有。

如果有人以前有过这种情况发生在他们身上的经历,并且可以给我一些提示,那就太好了。在那之前,我会继续努力让它发挥作用,并想知道为什么对于这样一个受欢迎的平台,SharePoint 比一个有头皮屑的青少年更脆弱。

干杯。贾斯。

4

2 回答 2

6

好吧,您不需要将文件配置到 _Layouts 文件夹。您所要做的就是复制。根据您的问题,您正在使用 wsp 构建器。您可以删除<ElementManifest Location="module.xml" /> 和 文件。

只需将文件放入 12\TEMPLATE\LAYOUTS 文件夹并运行 wspbuilder。文件将进入 _layouts。配置仅适用于需要进入站点的文件。_Layout 文件是应用程序页面,这是执行此操作的最佳方法。

于 2009-06-23T08:58:16.493 回答
0

他节省了我几个小时的时间。谢谢你的帖子!此外,如果发布的内容是图像,则无需提供完整路径。WSP 构建器将确保内容将放入 _layouts/images/。当然,您必须在 wsp builder 项目中具有文件夹结构。玩得开心,斯里万塔·斯里·阿拉文达

于 2009-07-10T08:59:56.747 回答