Sharepoint 2010文档集 - 如何以编程方式管理?

时间:2013-05-21 13:46:26

标签: sharepoint-2010

我是Sharepoint 2010的新手,但不是.Net编程的新手。这是我的情况,我有一大堆文件要上传到带有元数据的Sharepoint 2010。我决定编写一个C#类库来以编程方式处理文档集。我必须使用DocumentSets,我能够成功创建一个文档集。现在我坚持以下几点:

  1. 如何检查文档集是否已存在?
  2. 如何删除文档集?
  3. 以下是我创建文档集的代码:

    using (SPSite site = new SPSite(spURL))
    {
        using (SPWeb web = site.OpenWeb())
        {
            SPList docs = web.Lists["Documents"];
    
            if (docs != null)
            {
                SPContentType docSetCT = docs.ContentTypes["Document Set"];
    
                if (docSetCT != null)
                {
                    Hashtable docsetProps = new Hashtable();
                    docsetProps.Add("New Docset", "New Docset");
                    DocumentSet docSet = DocumentSet.Create(docs.RootFolder, documentSetName, docSetCT.Id, docsetProps, true);
                    docs.Update();
                }
            }
        }
    }
    

1 个答案:

答案 0 :(得分:3)

使用文档集的帮助程序方法列表:

如何检查文档集是否已存在?

private static bool IsDocumentSetExist(SPList list,string docSetName)
{
    var folderUrl = SPUrlUtility.CombineUrl(list.RootFolder.ServerRelativeUrl, docSetName);
    var folder = list.ParentWeb.GetFolder(folderUrl);
    return folder.Exists;
}

用法:

var docSetExists = IsDocumentSetExist(docs, "New Docset");

如何删除文档集?

private static void DeleteDocumentSet(DocumentSet docSet)
{
    docSet.Folder.Delete();
}