Bulk Upload Files to SharePoint remotely using CSOM in SharePoint Online
Using PowerShell: https://gallery.technet.microsoft.com/PowerShell-Bulk-Upload-b9e9d600
------------------------------------------------------------------------------------------------
Using PowerShell: https://gallery.technet.microsoft.com/PowerShell-Bulk-Upload-b9e9d600
------------------------------------------------------------------------------------------------
using Microsoft.SharePoint.Client;
using SP = Microsoft.SharePoint.Client;
using System;
using System.IO;
using System.Linq;
using System.Security;
namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
const string webUrl = "https://sreekanth2.sharepoint.com/";
const string USER = "sreekanth@sreekanth2.onmicrosoft.com";
const string PWD = "Password";
const string parent_dir = @"D:\ToUploadFilesFolder";
const string listTitle = "MyDocuments"; // Library Display Name and
Url should be same.
public string parent_folderName = "";
public string sub_folderName = "";
public string fileName = "";
public string file_relativeUrl = "";
protected void Page_Load(object sender, EventArgs e)
{
using (ClientContext clientContext = new ClientContext(webUrl))
{
SecureString passWord = new SecureString();
foreach (char c in PWD.ToCharArray())
{
passWord.AppendChar(c);
}
clientContext.Credentials = new SharePointOnlineCredentials(USER,
passWord);
var arrayfolderName = parent_dir.Split(new char[] { '\\' }, StringSplitOptions.RemoveEmptyEntries);
parent_folderName =
arrayfolderName[arrayfolderName.Length - 1];
if (!FolderExists(clientContext.Web, listTitle,
parent_folderName))
{
CreateFolder(clientContext.Web,
listTitle, parent_folderName);
}
DirSearch(clientContext,
parent_dir);
}
}
private void DirSearch(ClientContext clientContext, string dir)
{
try
{
foreach (string f in Directory.GetFiles(dir))
{
fileName = f.Split(new string[] { dir }, StringSplitOptions.RemoveEmptyEntries)[0].Replace("\\", "/");
file_relativeUrl =
parent_folderName + "/" + f.Split(new string[] { parent_dir + "\\" }, StringSplitOptions.RemoveEmptyEntries)[0].Replace("\\", "/");
//div1.InnerHtml += "/" + file_relativeUrl +
"</br>";
using (FileStream fs = new FileStream(dir + "\\" +
fileName, FileMode.Open))
{
SP.File.SaveBinaryDirect(clientContext,
"/" + listTitle + "/" + file_relativeUrl, fs, true);
}
}
foreach (string d in Directory.GetDirectories(dir))
{
sub_folderName = d.Split(new string[] { parent_dir + "\\" }, StringSplitOptions.RemoveEmptyEntries)[0].Replace("\\", "/");
//div1.InnerHtml += parent_folderName + "/" +
sub_folderName + "</br>";
if
(!FolderExists(clientContext.Web, listTitle, parent_folderName + "/" +
sub_folderName))
{
CreateFolder(clientContext.Web, listTitle, parent_folderName + "/" +
sub_folderName);
}
DirSearch(clientContext,
d);
}
}
catch (System.Exception ex)
{
div1.InnerHtml += ex.Message + " " +
ex.StackTrace;
}
}
public static bool FolderExists(Web web, string listTitle, string folderUrl)
{
var list = web.Lists.GetByTitle(listTitle);
var folders = list.GetItems(CamlQuery.CreateAllFoldersQuery());
web.Context.Load(list.RootFolder);
web.Context.Load(folders);
web.Context.ExecuteQuery();
var folderRelativeUrl = string.Format("/{0}/{1}", list.RootFolder.Name, folderUrl);
return Enumerable.Any(folders, folderItem => (string)folderItem["FileRef"] ==
folderRelativeUrl);
}
private static void CreateFolder(Web web, string listTitle, string folderName)
{
var list = web.Lists.GetByTitle(listTitle);
var folderCreateInfo = new ListItemCreationInformation
{
UnderlyingObjectType = FileSystemObjectType.Folder,
LeafName = folderName
};
var folderItem = list.AddItem(folderCreateInfo);
folderItem.Update();
web.Context.ExecuteQuery();
}
}
}
------------------------------------------------------------------------------------------------
527FF2E168
ReplyDeletekiralık hacker
hacker arıyorum
kiralık hacker
hacker arıyorum
belek
32B7C26562
ReplyDeleteTakipçi Satın Al
3D Car Parking Para Kodu
Telegram Coin Botları
Osm Promosyon Kodu
101 Okey Yalla Hediye Kodu
EB15598798
ReplyDeleteTakipçi Satın Al
M3u Listesi
MMORPG Oyunlar
Danone Sürpriz Kodları
Rise Of Kingdoms Hediye Kodu