Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- static void Main(string[] args)
- {
- string siteUrl = "https://ustglobal.sharepoint.com/sites/tech";
- string userName = "u53118@ust-global.com";
- Console.WriteLine("Password:");
- SecureString password = FetchPasswordFromConsole();
- using (ClientContext clientContext = new ClientContext(siteUrl))
- {
- Web web = clientContext.Web;
- clientContext.Credentials = new SharePointOnlineCredentials(userName, password);
- var list = clientContext.Web.Lists.GetByTitle("Documents created by team");
- var rootFolder = list.RootFolder;
- clientContext.Load(list);
- string pathString = @"d:docs";
- GetFoldersAndFiles(rootFolder, clientContext, pathString);
- }
- Console.ReadKey();
- }
- private static void GetFoldersAndFiles(Folder mainFolder, ClientContext clientContext, string pathString)
- {
- clientContext.Load(mainFolder, k => k.Files, k => k.Folders);
- clientContext.ExecuteQuery();
- foreach (var folder in mainFolder.Folders)
- {
- string folderPath = string.Format(@"{0}{1}", pathString, folder.Name);
- System.IO.Directory.CreateDirectory(folderPath);
- GetFoldersAndFiles(folder, clientContext, folderPath);
- }
- foreach (var file in mainFolder.Files)
- {
- var fileRef = file.ServerRelativeUrl;
- System.Console.WriteLine(file.ServerRelativeUrl);
- var fileInfo = Microsoft.SharePoint.Client.File.OpenBinaryDirect(clientContext, fileRef);
- var fileName = Path.Combine(pathString, file.Name);
- using (var fileStream = System.IO.File.Create(fileName))
- {
- fileInfo.Stream.CopyTo(fileStream);
- }
- }**strong text**
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement