前言:

这里主要是针对列表中的文件下新增子项的操作,同时在新建子项时,可以为子项指定特定的内容类型,在某些时候需要查询指定的文件夹下的内容,针对这些场景都一一给力示例和说明,都是一些很小的知识点,希望能够对大家有所帮助。

1.   在列表中为列表项添加子项

为列表添加子项大家都很熟悉,但是如何为列表项添加子项呢?例如列表项是一个文件夹,如何为该文件夹添加子项呢?这里就用到了List.AddItem()方法,具体示例如下:

首先我们要获取列表中的子项:

SPListItem root_item=list.GetItemById(id);

其次为该列表项添加子项:

SPListItem sub_item=list.AddItem(root_item.Folder.ServerRelativeUrl, SPFileSystemObjectType.File)

AddItem方法有三个重载,这里用到的是添加子项,其中第一个参数表示文件夹路径,也就是添加子项所在的位置,第二个参数是文件系统对象的类型,这里的类型是文件。

如果想要在子项中添加文件夹子项,则需要使用additem的另一种重载,示例如下:

SPListItem item_folder = list.AddItem(item.Folder.ServerRelativeUrl, SPFileSystemObjectType.Folder, "folder_Name");

这里有三个参数,前两个参数代表的含义跟上边的重载函数的含义是一样的,不过这里的文件系统对象的类型是Folder,也就是文件夹,同时这里的第三个参数就是新建的文件夹的名字。

最后需要特别注意的是,list.addItem()方法需要跟item.update()方法结合使用这样才能使该项添加到里边中去,所以最后都要调用item.Update()方法。

Item.Update();

2.   添加指定内容类型的列表项

在实际的开发中,有些列表或者库会有多个内容类型,在表单上添加新项时,只需要选择要添加的内容类型即可,但是如何在代码中添加新项,并且为其指定特定的内容类型呢?示例如下:

SPListItem temp_item = list.AddItem(item.Folder.ServerRelativeUrl, SPFileSystemObjectType.File);
temp_item["Title"] = "哈哈";
temp_item["ContentTypeId"] = list.ContentTypes["ConteneType_Name"].Id;
temp_item.Update();

  

可以从示例中看出,只需要为新增的Item项指定一个“ContentTypeId”即可,指定的ContentType可以通过list.ContentTypes[“contenttype_name”]来获得。这样就可以为新增的Item项指定特定的内容类型。

3.   查询列表中文件夹下的数据

通过CAML语言我们可以很轻松的查询列表下的数据,但是如果要查询指定文件夹下的数据该如何查询呢?示例如下:

SPList item=list.GetItemById(id);
SPFolder folder = item.Folder;
phaseType = item["PhaseType"] + "";
SPQuery sub_query = new SPQuery();
sub_query.Folder = folder;
sub_query.Query = @"<Where><Neq><FieldRef Name='Title'/><Value Type='Text'>1232</Value></Neq></Where><OrderBy><FieldRef Name='PhaseIndex' Ascending='False' /></OrderBy>";
SPListCollection items=list.getItems(sub_query)

  这里总结的都是工作中遇到的一些小的知识点,其实也不难只是有些东西用的比较少,查找起来也比较麻烦,一一总结出来,希望给遇到类似问题的朋友一些帮助。

每日学习心得:SharePoint 为列表中的文件夹添加子项(文件夹)、新增指定内容类型的子项、查询列表中指定的文件夹下的内容的更多相关文章

  1. 每日学习心得:SharePoint 2013 自定义列表项添加Callout菜单项、文档关注、SharePoint服务端对象模型查询

    前言: 前一段时间一直都比较忙,没有什么时间进行总结,刚好节前项目上线,同时趁着放假可以好好的对之前遇到的一些问题进行总结.主要内容有使用SharePoint服务端对象模型进行查询.为SharePoi ...

  2. 每日学习心得:找不到类型{0},它在 ServiceHost 指令中提供为 Service 特性值,或在配置元素...中提供,cellspacing、rowspacing属性

    2013-7-6 1.                找不到类型“WCFService.Service1”,它在 ServiceHost 指令中提供为 Service 特性值,或在配置元素 syste ...

  3. 每日学习心得:CustomValidator验证控件验证用户输入的字符长度、Linq 多字段分组统计、ASP.NET后台弹出confirm对话框,然后点击确定,执行一段代码

    2013-9-15 1.    CustomValidator验证控件验证用户输入的字符长度 在实际的开发中通常会遇到验证用户输入的字符长度的问题,通常的情况下,可以写一个js的脚本或者函数,在ASP ...

  4. 每日学习心得:Linq解决DataTable按照某一列的值排序问题/DataTable 导出CSV文件/巧用text-overflow解决数据绑定列数据展示过长问题

    2013-8-5 1 Linq解决DataTable按照某一列的值排序 在之前的总结中提到过对拼接而成的复合的DataTable按照某一列值的大小排序,那个主要的思想是在新建表结构时将要排序的那一列的 ...

  5. 每日学习心得:$.extend()方法和(function($){...})(jQuery)详解

    2014-02-09 前言: 节后头两天上班,主要是调整工作状态.项目也不是很紧,趁着周末把年前遇到了一些关于JS和JQuery的一些问题给总结一下.主要是介绍JQuery的extend方法和(fun ...

  6. sharepoint 2013创建外部内容类型并创建外部列表

    步骤: 1.如何:基于 SQL Server 表创建外部内容类型 How to: Create an External Content Type Based on a SQL Server Table ...

  7. SharePoint 2013 Workflow Manager 1.0 远程服务器返回错误: (400) 错误的请求。 不支持查询字符串中的 api-version

    环境: Windows Server 2012 R2 Standard SharePoint Server 2013 with sp1 通过Web 平台安装程序 5.0,已安装 Workflow Ma ...

  8. 每日学习心得:Js基本数据类型常用方法扩展

    2014-02-17 前言: 节后的第一周上班,整个状态调整的还不错,已完全进入正常的工作状态.这一周主要还是对年前项目存在的一些问题进行完善.修整,基本上没有做大的改动.这里就把项目中经常用到的一些 ...

  9. 每日学习心得:UEditor样式被过滤无法显示问题

    前言: 上周开发中有用到开源的富文本编辑器UEditor,在使用的过程中遇到了样式被过滤无法显示问题,经过一番折腾终解决,此外,还有一些关于获取前台界面元素的一些总结. 1. UEditor样式被过滤 ...

随机推荐

  1. Cryptopp iOS 使用 RSA加密解密和签名验证签名

    Cryptopp 是一个c++写的功能完善的密码学工具,类似于openssl 官网:https://www.cryptopp.com 以下主要演示Cryptopp 在iOS上的RSA加密解密签名与验证 ...

  2. 能源项目xml文件 -- app-dubbo.xml

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  3. Clojure学习笔记(一)——介绍、安装和语法

    什么是Clojure Clojure是一种动态的.强类型的.寄居在JVM上的语言. Clojure的特性: 函数式编程基础,包括一套性能可以和典型可变数据结构媲美的持久性数据结构 由JVM提供的成熟的 ...

  4. 张艾迪(创始人):创始人故事无限N个

    世界第一女孩+世界第一互联网女孩 创始人故事无限N个 全球第一互联网女孩EidyZhang艾迪.张 The World No.1 Girl :Eidyzhang The World No.1 Inte ...

  5. 如何使CSS3中的animation动画当每滑到一屏时每次都运行

    这个我还没用过,但感觉以后会用到,就随手摘抄一下啦<div id="a1"></div> <div id="a2">< ...

  6. WCF初探-20:WCF错误协定

    WCF错误协定概述 在所有托管应用程序中,处理错误由 Exception 对象表示. 在基于 SOAP 的应用程序(如 WCF 应用程序)中,服务方法使用 SOAP 错误消息来传递处理错误信息. SO ...

  7. JavaWeb chapter6 对象作用域

    1.  对象属性所在作用域:谁能看到并使用这个属性,以及它能存活多久. 2.  应用上下文ServletContext对象作用域: 对于整个Web应用,只有一个ServletContext对象,而且在 ...

  8. QT快速使用ntohs

    QT快速使用ntohs,需要注意3点:1. ntohs只是转换相邻的2个字节2. 引入头文件#include <windows.h>3. 需要加上win32{LIBS+=-lws2_32} ...

  9. Sae上传war包找不到编译文件

    最近在试新浪的sae平台,有个问题困扰了几天,现在想来还是自己对JAVA的理解不深入,这里写下仅作记忆. 问题:在整微信公众号平台进开发者中心的时候,token验证一直是失败的.但是项目在本地的环境中 ...

  10. 定时调度框架Quartz随笔

    最近项目中的定时批处理用到了quartz定时任务,在此记录下quartz的配置吧,一个小demo仅供参考,也方便自己今后复习! 下面直接来步骤吧! 一.首先,要搭起能让quartz正常运行的环境,至少 ...