好吧,伙计们,我已经为这个问题低头已有一段时间了。让我给大家介绍一下背景。我有一个站点集合特性(FileCentral)正在处理它的版本“1.0.0.0”。此功能所做的是创建一个文档库,在其中我可以上传将存储在网络共享上的文件。因此,这个文档库中的每个项都存储一个指向文件路径的链接。这里没问题。最近,我得到了以下要求:“应该可以将文件从文件夹同步到文档库”。换句话说,我需要某种方式来扫描放置在网络共享中的文件,并创建指向这些文件的相应列表项。建议的解决方案是在此文档库上创建一个自定义操作,单击该操作将打开一个对话框,其中包含一个名为SyncFiles.aspx的页面。然后,此页面将调用一个异步服务,负责列出尚未同步的文件。然后,用户将选择要同步的文件并确认操作。该解决方案的项目结构是:
|Features
|-- FileCentral (Site scoped feature)
|---- FileCentral.feature
|------ FileCentral.Template.xml
|branding (module)
|-- js (folder)
|---- app (folder)
|------ fileCentral (folder)
|-------- home.js
|-- Elements.xml
|Pages (module)
|-- Home.aspx (file)
|Updates (folder)
|-- SyncFileCentral (folder)
|---- Assets (module)
|------ js (folder)
|-------- app (folder)
|---------- fileCentral (folder)
|------------ sync.js
|------ Elements.xml
|---- Button (custom action)
|------ Elements.xml
|---- Pages (module)
|------ SyncFiles.aspx
|------ Elements.xml资产模块将必要的javascript e文件部署到Masterpage库中,以使SyncFiles.aspx页面工作:
<!-- Assets module -->
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Module Name="branding" Url="_catalogs/masterpage" RootWebOnly="TRUE">
<File Path="branding\js\app\fileCentral\sync.js" Url="branding/js/app/fileCentral/sync.js" ReplaceContent="TRUE" IgnoreIfAlreadyExists="TRUE" Type="GhostableInLibrary" Level="Published"/>
</Module>
</Elements>Button自定义操作部署(猜怎么着?)定制的行为。页面模块将SyncFiles.aspx页面部署到Pages文档库中。
<-- Pages module -->
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Module Name="Pages" Url="Pages" RootWebOnly="TRUE">
<File Path="Pages\SyncFiles.aspx" Url="Pages/SyncFiles.aspx" Type="GhostableInLibrary" IgnoreIfAlreadyExists="TRUE" ReplaceContent="TRUE" Level="Published" />
</Module>
</Elements>FileCentral.Template.xml看起来像:
<?xml version="1.0" encoding="utf-8"?>
<Feature xmlns="http://schemas.microsoft.com/sharepoint/" **Version="2.0.0.0"** Title="File Central" ActivateOnDefault="FALSE" AlwaysForceInstall="TRUE" Description="DESCRIPTION HERE" Id="XXX" Scope="Site">
<!-- Feature Upgrade -->
<UpgradeActions>
<VersionRange BeginVersion="2.0.0.0" EndVersion="3.0.0.0">
<ApplyElementManifests>
<ElementManifest Location="Assets\Elements.xml" />
<ElementFile Location="Assets\js\app\fileCentral\sync.js" />
<ElementManifest Location="Button\Elements.xml" />
<ElementManifest Location="Pages\Elements.xml" />
<ElementFile Location="Pages\SyncFiles.aspx" />
</ApplyElementManifests>
</VersionRange>
</UpgradeActions>
<ElementManifests>
<ElementManifest Location="branding\Elements.xml" />
<ElementFile Location="branding\js\app\fileCentral\home.js" />
<ElementManifest Location="Assets\Elements.xml" />
<ElementFile Location="Assets\js\app\fileCentral\sync.js" />
<ElementManifest Location="Button\Elements.xml" />
<ElementManifest Location="Pages\Elements.xml" />
<ElementFile Location="Pages\SyncFiles.aspx" />
</ElementManifests>
</Feature>好了,上下文够多了。问题是:当我更新-SPS卷积-Identity "FileCentralSolution.wsp“-LiteralPath "X”-GACDeployment时,我可以看到FileCentralSolution.wsp $true)),其中有一些特性需要更新。然后,当我更新这些特性时,我无法看到我的资产和页面都没有变化。唯一被部署的是我的自定义操作。因此,当我单击该按钮时,会打开一个空白对话框。如果我检查网络选项卡,我可以看到资产和页面请求返回404状态响应。我做错什么了?
发布于 2017-03-29 14:39:01
您是否检查了您的文件系统,以确定这些文件是否确实已部署到正确的单元中?如果这是SharePoint 2013,您的解决方案文件是否被部署到适合您所选UI模式的文件夹中?(CompatibilityLevel 14,15?)
https://stackoverflow.com/questions/43083973
复制相似问题