每日学习心得:SharePoint 为列表中的文件夹添加子项(文件夹)、新增指定内容类型的子项、查询列表中指定的文件夹下的内容
前言:
这里主要是针对列表中的文件下新增子项的操作,同时在新建子项时,可以为子项指定特定的内容类型,在某些时候需要查询指定的文件夹下的内容,针对这些场景都一一给力示例和说明,都是一些很小的知识点,希望能够对大家有所帮助。
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 为列表中的文件夹添加子项(文件夹)、新增指定内容类型的子项、查询列表中指定的文件夹下的内容的更多相关文章
- 每日学习心得:SharePoint 2013 自定义列表项添加Callout菜单项、文档关注、SharePoint服务端对象模型查询
前言: 前一段时间一直都比较忙,没有什么时间进行总结,刚好节前项目上线,同时趁着放假可以好好的对之前遇到的一些问题进行总结.主要内容有使用SharePoint服务端对象模型进行查询.为SharePoi ...
- 每日学习心得:找不到类型{0},它在 ServiceHost 指令中提供为 Service 特性值,或在配置元素...中提供,cellspacing、rowspacing属性
2013-7-6 1. 找不到类型“WCFService.Service1”,它在 ServiceHost 指令中提供为 Service 特性值,或在配置元素 syste ...
- 每日学习心得:CustomValidator验证控件验证用户输入的字符长度、Linq 多字段分组统计、ASP.NET后台弹出confirm对话框,然后点击确定,执行一段代码
2013-9-15 1. CustomValidator验证控件验证用户输入的字符长度 在实际的开发中通常会遇到验证用户输入的字符长度的问题,通常的情况下,可以写一个js的脚本或者函数,在ASP ...
- 每日学习心得:Linq解决DataTable按照某一列的值排序问题/DataTable 导出CSV文件/巧用text-overflow解决数据绑定列数据展示过长问题
2013-8-5 1 Linq解决DataTable按照某一列的值排序 在之前的总结中提到过对拼接而成的复合的DataTable按照某一列值的大小排序,那个主要的思想是在新建表结构时将要排序的那一列的 ...
- 每日学习心得:$.extend()方法和(function($){...})(jQuery)详解
2014-02-09 前言: 节后头两天上班,主要是调整工作状态.项目也不是很紧,趁着周末把年前遇到了一些关于JS和JQuery的一些问题给总结一下.主要是介绍JQuery的extend方法和(fun ...
- sharepoint 2013创建外部内容类型并创建外部列表
步骤: 1.如何:基于 SQL Server 表创建外部内容类型 How to: Create an External Content Type Based on a SQL Server Table ...
- SharePoint 2013 Workflow Manager 1.0 远程服务器返回错误: (400) 错误的请求。 不支持查询字符串中的 api-version
环境: Windows Server 2012 R2 Standard SharePoint Server 2013 with sp1 通过Web 平台安装程序 5.0,已安装 Workflow Ma ...
- 每日学习心得:Js基本数据类型常用方法扩展
2014-02-17 前言: 节后的第一周上班,整个状态调整的还不错,已完全进入正常的工作状态.这一周主要还是对年前项目存在的一些问题进行完善.修整,基本上没有做大的改动.这里就把项目中经常用到的一些 ...
- 每日学习心得:UEditor样式被过滤无法显示问题
前言: 上周开发中有用到开源的富文本编辑器UEditor,在使用的过程中遇到了样式被过滤无法显示问题,经过一番折腾终解决,此外,还有一些关于获取前台界面元素的一些总结. 1. UEditor样式被过滤 ...
随机推荐
- python核心编程第六章练习6-10
6-10.字符串.写一个函数,返回一个跟输入字符串相似的字符串,要求字符串的大小写反转,比如,输入“Mr.Ed”,应该返回“mR.eD”作为输出.[答案]代码如下: #!/usr/bin/env py ...
- linux笔记:shell基础-概述和脚本执行方式
什么是shell: linux使用的默认shell是Bash: shell脚本的后缀名为.sh,shell脚本的第一行#!/bin/bash 不是注释,而是标识这是一个shell脚本,因为linux并 ...
- Excel 2013中单元格添加下拉列表的方法
使用Excel录入数据的时候我们通常使用下拉列表来限定输入的数据,这样录入数据就很少发生错误了.Excel 2013较以前的版本发生了很大的变化,那么在Excel 2013是如何添加下拉列表的呢? 下 ...
- CMD规范(通用模块定义规范)(翻译)
最近在使用sea.js.大家知道sea.js遵循CMD规范.该规范的英文说明很简洁,我试着翻译了一下,旨在交流. Common Module Definition 通用模块定义规范 This spec ...
- Shell脚本的追踪与debug
[xd502djj@linux ~]#sh [-nvx] scripts.sh 参数: -n:不执行脚本,仅仅查询语法错误 -v:执行脚本前,先将脚本scripts的内容输出到屏幕上 -x:将使用到的 ...
- stash存储
比如我的fsm_ngh分支,被a修改了,可是我本地还有没有提交的东西,就不能切换分支也不能下拉,也不能直接上传,否则分支会混乱. 这个时候stash的优点来了,先把你修改的暂存隐藏起来,然后pull远 ...
- Grunt完成对LESS实时编译
安装 安装grunt需要先安装node.js. 之后需要借助npm来安装grunt-cli,在cmd中npm install -g grunt-cli.(测试grunt --version看是否正确显 ...
- Halcon 10.0 Sample:完整性检查(圆形)
* ball.hdev: Inspection of Ball Bonding * 球接合检查 Comment Time:// *核心思想:.白色区域用作自动ROI,黑色区域是目标 * .Openin ...
- CTSC&&APIO 2015 酱油记
在北京待了一周多,还是写点记录吧. 人民大学校园还是挺不错的,不过伙食差评. CTSC的题目太神,根本不会搞,一试20二试10分..本来都寄希望于提交答案题的..结果就悲剧了. 然后是听大爷们的论文答 ...
- 【63测试20161111】【BFS】【DP】【字符串】
第一题: tractor 题目描述 农场上有N(1 <= N <= 50,000)堆草,放在不同的地点上.FJ有一辆拖拉机,也在农场上.拖拉机和草堆都表示为二维平面上的整数坐标,坐标值在1 ...