代码之家  ›  专栏  ›  技术社区  ›  oglester

SharePoint部署,重影文件返回404

  •  1
  • oglester  · 技术社区  · 14 年前

    在将升级部署到包含可重影页面模板的特定功能之后,页面开始返回404响应。

    在SharePoint日志中,我得到以下信息

    无法获取幻影文档:features\featurename\subfolder\pagename.aspx

    发生未知的SPRequest错误。更多信息:0x80070002

    通过浏览SharePoint Designer并删除文件,然后停用/激活该网站上的功能,我可以使页面正常工作。

    我尝试将网络重置为其定义,但没有更改。

    我想有一个程序化的解决方案,不管是修复功能配置中的某些东西还是更新程序。

    2 回复  |  直到 14 年前
        1
  •  1
  •   oglester    14 年前

    我可以通过以下方式解决这个问题

    1. 在功能停用事件中添加一小段代码,以从网站页面中删除有问题的文件。

          SPFolder sitePagesFolder = web.GetFolder("SitePages");
          foreach (SPFile file in sitePagesFolder.Files)
            if (file.Name == "pagename.aspx")
              file.Delete();
      
    2. 使用一个实用程序,浏览所有受影响的网站,重新激活相关功能,这会导致“孤立”文件被删除,替换为当前版本的

    我不完全理解问题的内部工作方式,但似乎在删除/重新安装功能时,有时关联的重影文件会被孤立,从而导致此问题。

        2
  •  0
  •   Vladi Gubler    14 年前

    升级是否可能从文件系统中删除了该文件?因为这是可能的原因。转到功能文件夹,查看文件是否仍然存在。功能文件夹将位于12/14下的模板\功能下(取决于SP版本)