c# - 在 SharePoint Online (CSOM) 的文档库中检查和创建文件夹的最快方法?

标签 c# sharepoint sharepoint-2013 sharepoint-online csom

我有一个 SharePoint Online,我可以在其中通过我的控制台应用程序成功连接:

private static ClientContext GetUserContext()
{
   var o365SecurePassword = new SecureString();

   foreach (char c in o365Password)
   {
       o365SecurePassword.AppendChar(c);
   }

   var o365Credentials = new SharePointOnlineCredentials(o365Username, o365SecurePassword);

   var o365Context = new ClientContext(o365SiteUrl);
   o365Context.Credentials = o365Credentials;

   return o365Context;
}

但我现在需要做的是进入名为“doc_archive”的 SharePoint 文档库,并检查是否存在名为“K20170409-01”的文件夹。 如果没有创建一个新的。

尝试失败

ClientContext context = GetUserContext();

Web web = context.Web;
Web webroot = context.Site.RootWeb;
context.Load(web);
context.Load(webroot);

List list = webroot.GetList("doc_archive");
context.Load(list);

FolderCollection folders = list.RootFolder.Folders;
context.Load(folders);

IEnumerable<Folder> existingFolders = context.LoadQuery(
    folders.Include(
    folder => folder.Name)
);
context.ExecuteQuery();

通过 CSOM(命令行应用程序)在 SharePoint Online 的文档库中检查和创建文件夹的最快方法是什么?

最佳答案

如果您对使用外部库感到满意,那么 OfficeDevPnP.Core为 SharePoint 和 SharePoint Online 提供了一些很棒的 CSOM 扩展。它很容易以 NuGet 的形式提供。包添加到您的项目中。

根据您的要求,有 EnsureFolderPath扩大。此函数将检查文件夹是否存在,如果需要则创建它并返回 Microsoft.SharePoint.Client.Folder 对象。

非常容易使用:

var webRelativeUrlToFolder = "/doc_archive/K20170409-01"
var folder = cc.Web.EnsureFolderPath(webRelativeUrlToFolder);
cc.Load(folder);
cc.ExecuteQuery();

关于c# - 在 SharePoint Online (CSOM) 的文档库中检查和创建文件夹的最快方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43307355/

相关文章:

c# - Visual Studio 不断用旧版本覆盖 NewtonSoft.Json.DLL

c# - 使用泛型创建可重用方法

javascript - 使用 Sharepoint 2010 内容编辑器时 HTML 外部 CSS 和 Javascript 的路径

sharepoint - 可以在 sharepoint 中构建时间表应用程序吗?

sharepoint - 如何安装 SharePoint 版本?

asp.net - SharePoint 2013 中应用程序页面的 View 状态会在一段时间后过期吗?

CSS 条件注册不起作用

c# - 错误CC1071 : Arguments to contract validator call are too complicated. 请简化

javascript - 更新带有附件的列表项时出现冲突问题

c# - 将包含所有条件格式规则的 excel 文件导入 epplus