0

这是我的场景:我需要使用其 Web 服务将文件复制到共享点文档库并在其上设置元数据。CopyIntoItems(来自 Copy webservice)除了查找字段外,一切皆有可能。CopyIntoItems 会忽略它们,因此我需要另一种方法来在这些字段上设置数据。

我尝试使用必填字段和查找字段元数据创建列表项,然后使用项目 ID(使用 ID 创建 FieldInformation 字段以及其他一些简单元数据)调用 CopyIntoItems 方法,而不是更新该项目,sharepoint 创建了一个新项目。

我不能以相反的顺序执行此操作,因为我无法从 CopyIntoItems 创建的项目中获取 ID ...

所以,问题是:如何将文件上传到共享点文档库并设置其所有元数据?包括查找字段。

4

2 回答 2

2
  1. 使用常规 PUTWebRequest文档上传到库中
  2. 查询文档库找到刚刚上传的项目的ID(根据路径)
  3. 使用Lists.asmx Web 服务更新文档元数据

有用的链接:将文件上传到 SharePoint 文档库并更新任何元数据列

于 2010-09-28T16:23:44.737 回答
0

请记住,如果目标文件夹项目计数 + 祖先文件夹项目计数超过列表视图阈值,则您无法在列表中查询 id(来自 Kit 答案的第 2 步)。

如果将查询限制在文件夹层次结构中的特定分支,则可以更有效地完成查询。一种解决方法是修改站点设置,但查询会很慢,并且会使解决方案的可移植性降低,因为 Office365 和 BPOS 的阈值无法更改。

这更好地解释了它:http: //office.microsoft.com/en-us/office365-sharepoint-online-enterprise-help/create-or-delete-a-folder-in-a-list-or-library- HA102771961.aspx

于 2012-09-20T04:50:22.853 回答