将MS Word文档上载到没有元数据的Sharepoint

时间:2014-04-16 09:48:43

标签: sharepoint file-upload sharepoint-2010 metadata

您能告诉我处理上传到SharePoint(2010)MS Word文档的最佳方法是什么,该文档已包含由SharePoint添加的元数据?当用户从SharePoint库中获取某些文档,修改它并将它们作为新文件上载到同一个库时,我遇到了问题。我有一个表单在doc上传时打开以填充一些元数据,表单上的那些字段预先填充了SharePoint先前在文档上设置的值。最大的问题是,即使用户更改了这些值,文件也会保存为旧文件,并且还会创建一个新的列表项,其中包含不正确的(旧)值,这当然会导致错误和错误。

我正在考虑使用ItemAdding方法中的eventreceiver手动清除值:

    public override void ItemAdding(SPItemEventProperties properties)
    {
        properties.AfterProperties["Title"] = String.Empty;
        properties.AfterProperties["Adresat"] = "";
        properties.AfterProperties["Nr_x0020_dziennika"] = "";
        properties.AfterProperties["Budowa"] = "";
        properties.AfterProperties["Osoba_x0020_odpowiedzialna"] = "";
        properties.AfterProperties["Osoba_x0020_do_x0020_wiad"] = "";
        properties.AfterProperties["Komentarz"] = "";
    }

但它看起来像一个讨厌的解决方法,它还会在工作流程中上传文档时删除更高版本的文档。

1 个答案:

答案 0 :(得分:0)

如果问题仅适用于新文档,那对您的问题来说并不是一个糟糕的解决方案。

你可以让你的事件接收者通过查看属性检查是否有以前的版本.ListItemVersion

由于Office文档的元数据实际上存储在文档中,您可能需要对此解决方案进行一些修改,实际上将其从文档中删除:http://sadomovalex.blogspot.com/2012/12/remove-sharepoint-metadata-from-ms.html

相关问题