zoukankan      html  css  js  c++  java
  • 利用CSOM向列表添加文件夹

    

    博客地址:http://blog.csdn.net/FoxDave

    本文只为记录一下这个小细节,不会过多赘述,开发可以看懂。

    如果想向一个列表或库中添加文件夹,平时我们自然想到的是list.rootfolder.folders.add方法或者folder.folders.add方法,这种方式在库中是可以添加成功的,代码片段如下:

    List list = web.Lists.GetByTitle("MyDoc1");
                    ctx.Load(list, l => l.RootFolder);
                    ctx.ExecuteQuery();
    
                    list.RootFolder.Folders.Add("test");
                    ctx.ExecuteQuery();

    在SPD中可以看到创建成功的文件夹如下图

    但是如果在列表如自定义列表中使用此方式,文件夹是添加成功了,但在界面上是不可见的,在SPD中的效果如下图,可以看到这只是一个普通的文件夹,跟直接从界面上创建出来的是不同的。

    也就是说,当需要往列表里面创建文件夹时,需要使用另一种方式,添加Item的方式去创建,代码片段如下:

    List list = web.Lists.GetByTitle("testlist");
                    ctx.Load(list, l => l.RootFolder);
                    ctx.ExecuteQuery();
                    ListItemCreationInformation folderCreate = new ListItemCreationInformation();
                    folderCreate.UnderlyingObjectType = FileSystemObjectType.Folder;
                    folderCreate.FolderUrl = "/sites/Meliodas_AA/Lists/testlist/uifolder";
                    ListItem folderItem = list.AddItem(folderCreate);
                    folderItem["Title"] = "new test1";
                    folderItem.Update();
                    ctx.ExecuteQuery();

    说明一点,如果要往列表的根目录添加文件夹,可以不用指定FolderUrl属性,如果想在子文件夹中创建的话,需要指定该属性,可以传入父文件夹对象的ServerRelativeUrl属性。

    另外,文件夹在界面上显示的名称需要设置ListItem的["Title"]属性,LeafName属性指定了Url。

  • 相关阅读:
    Django+xadmin打造在线教育平台(八)
    Django+xadmin打造在线教育平台(七)
    Django+xadmin打造在线教育平台(六)
    Django+xadmin打造在线教育平台(五)
    Django+xadmin打造在线教育平台(四)
    Django+xadmin打造在线教育平台(三)
    Django+xadmin打造在线教育平台(二)
    Django+xadmin打造在线教育平台(一)
    Linux环境部署(一)
    centOS的联网问题
  • 原文地址:https://www.cnblogs.com/justinliu/p/5961593.html
Copyright © 2011-2022 走看看