/// <summary> /// Enumerates the content of the document library (via the /// SiteData web service) and loads up anything it finds that's /// a document. /// </summary> public void LoadDocuments() { SiteData dws = NewSiteDataWebService(); try { _sFPUrl[] enArray = null; string path = siteUrl + "/" + libPath; dws.EnumerateFolder(path, out enArray); foreach (_sFPUrl item in enArray) { if (!item.IsFolder) { int lastSlashPos = item.Url.LastIndexOf("/"); string filename = item.Url.Substring(lastSlashPos + 1); documents.Add(new SharePointDocument(siteUrl, this.Name, filename)); } } } catch (NullReferenceException nullEx) { // handles empty folders Console.WriteLine(nullEx.Message); } catch (SoapException ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// Recursively process a folder url and all subfolders, /// creating new SharePointDocLibFolder objects on the fly /// and adding them to the list of subfolders in this class. /// This creates a heiarchy of folders we can recurse through /// in the gui or for processing. /// </summary> /// <param name="dws">The SiteData Web Service</param> /// <param name="folderUrl">A url to the folder you want to enumerate</param> /// <remarks>This is a private method and not currently used /// but might want to be refactored to be public.</remarks> private void EnumerateFolder(SiteData dws, string folderUrl) { _sFPUrl[] enArray = null; try { dws.EnumerateFolder(folderUrl, out enArray); foreach (_sFPUrl folder in enArray) { if (folder.IsFolder) { subFolders.Add(new SharePointDocLibFolder(siteUrl, folder.Url)); } } } catch (NullReferenceException nullEx) { // handles empty folders Console.WriteLine(nullEx.Message); } catch (SoapException ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// Load on demand the sub folders for a WSS Document Library /// </summary> public void LoadSubFolders() { SiteData dws = NewSiteDataWebService(); try { _sFPUrl[] enArray = null; string path = siteUrl + "/" + folderUrl; dws.EnumerateFolder(path, out enArray); foreach (_sFPUrl folder in enArray) { if (folder.IsFolder) { subFolders.Add(new SharePointDocLibFolder(siteUrl, folder.Url)); } //EnumerateFolder(dws, siteUrl+"/"+folder.Url); } } catch (NullReferenceException nullEx) { // handles empty folders Console.WriteLine(nullEx.Message); } catch (SoapException ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// Loads the folders. /// </summary> public void LoadFolders() { SiteData dws = NewSiteDataWebService(); try { _sFPUrl[] enArray = null; dws.EnumerateFolder(siteUrl + "/" + libPath, out enArray); foreach (_sFPUrl folder in enArray) { if (folder.IsFolder) { SharePointDocLibFolder spFold = new SharePointDocLibFolder(siteUrl, folder.Url); spFold.Credentials = Credentials; folderList.Add(spFold); } } } catch (SoapException ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// Recursively process a folder url and all subfolders, /// creating new SharePointDocLibFolder objects on the fly /// and adding them to the list of subfolders in this class. /// This creates a heiarchy of folders we can recurse through /// in the gui or for processing. /// </summary> /// <param name="dws">The SiteData Web Service</param> /// <param name="folderUrl">A url to the folder you want to enumerate</param> /// <remarks>This is a private method and not currently used /// but might want to be refactored to be public.</remarks> private void EnumerateFolder(SiteData dws, string folderUrl) { _sFPUrl[] enArray = null; try { dws.EnumerateFolder(folderUrl, out enArray); foreach(_sFPUrl folder in enArray) { if(folder.IsFolder) subFolders.Add(new SharePointDocLibFolder(siteUrl, folder.Url)); } } catch (NullReferenceException nullEx) { // handles empty folders Console.WriteLine(nullEx.Message); } catch (SoapException ex) { Console.WriteLine(ex.Message); } }