2013-05-21 40 views
1

我是Sharepoint 2010的新手,但对.NET编程并不陌生。这是我的情况,我有一大组文件要通过元数据上传到Sharepoint 2010。我决定编写一个C#类库以编程方式处理文档集。我必须使用DocumentSets,并且我能够成功创建文档集。现在我坚持以下几点:Sharepoint 2010 DocumentSets - 如何以编程方式管理?

  1. 如何检查文档集是否已存在?
  2. 我该如何删除一个documentSet?

这里是我的代码来创建documentset:

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(); 
      } 
     } 
    } 
} 

回答

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(); 
} 
相关问题