转:http://blog.csdn.net/pclzr/article/details/7591731

SPFolder是SharePoint对象模型中文件夹相关的类,它的使用方法相对比较简单。获取一个SPFolder的对象可以通过SPFolderCollection使用以下两种方法获得。

· folders[int index]:通过文件夹集合中的下标来获得;

· folders[string url]:通过该文件夹的url来获得。

而SPFolderCollection对象一般可通过SPWeb.Folders属性或SPFolder.SubFolders属性来获得。

而在SPWeb和SPList的对象模型中,都有该网站(或列表)所在的根目录的信息,可以直接通过SPWeb.RootFolder属性和SPList.RootFolder属性得到。但是需要特别指出的是,SPList.RootFolder的访问默认是没有开启的,如果想通过这种方法得到一个SPFolder对象,必须先将SPListCollection.IncludeRootFolder属性设为true。

在SPWeb中,也可以使用GetFolder方法来获得该网站中的某个文件夹对应的SPFolder对象。

· GetFolder(string url):参数为该文件夹所对应的路径(注意不要包含最后的“/”字符)。

文件夹的添加和删除同样是通过SPFolderCollection来完成的。

· Add(string url):添加一个文件夹,参数为待添加文件夹的url,该函数成功后直接返回一个SPFolder对象;

· Delete(string url):删除一个文件夹,参数为待删除文件夹的url。

在SPFolder类中,有如下一些常用的属性。

· ContainingDocumentLibrary:如果该文件夹是包含于一个文档库中的,那么该属性返回标识该文档库列表的Guid。该属性只读;

· Exists:判断该文件夹是否存在,在获取一个文件夹之后(尤其是通过url的方式获取一个文件夹之后),非常有必要先判断该文件夹是否存在,因为在获取文件夹的时候,文件夹不存在并不会引发异常,而在使用一个不存在的文件夹的时候,必然会引发异常。该属性只读;

· Files:该文件夹下的所有文件的集合;

· Name:该文件夹的名称(只读);

· ParentFolder:它的上一级文件夹的对象(只读);

· ParentWeb:该文件夹所在网站的对象(只读);

· ServerRelativeUrl:该文件夹相对于服务器根地址的url(只读);

· SubFolders:该文件夹下所有子文件夹的集合;

· Url:该文件夹相对于其所在网站的url(只读)。

SPFolder也提供了两个非常有用的函数。

·CopyTo(string newUrl):将该文件夹复制到参数所指定的url中;

·MoveTo(string newUrl):将该文件夹移动到参数所指定的url中。

示例9-7】 一个简单的函数,通过递归的方法遍历某文件夹下的层级结构:

void LookupFolders(SPFolder parentFolder, int level)

{

for(int i=0; i<level; i++)

Console.Write('\t');

Console.WriteLine(parentFolder.Name);

foreach(SPFolder subFolder in parentFolder.SubFolders)

{

if(subFolder.Exists)

LookupFolders(subFolder, level+1);

}

}

转载于:https://www.cnblogs.com/jackljf/p/4768652.html

sharepoint SPFolder的使用相关推荐

  1. SharePoint 2010 change home page或者default page

    SharePoint: How to change the default home page I frequently get questions on changing the home page ...

  2. SharePoint 2013 Word 转换PDF服务介绍及示例

    前言:在SharePoint使用过程中,经常会发现将文档进行格式转换的需求,之前,看到SharePoint 2013有将PPT转换PDF文档的服务,后来,才发现SharePoint 2010开始,就有 ...

  3. 递归上传文件和文件夹至SharePoint

    如果你使用SharePoint 2010的话,可以直接"上传多个文件".在弹出的对话框中可以直接往里拖放整个文件夹.如下图所示: 如果是SharePoint 2007的话,可以通过 ...

  4. SharePoint文档上传管理

    前台代码: <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="FileU ...

  5. SharePoint 编程指南(转)

    网站相关的对象模型 作为一个应用原型系统,SharePoint提供了很多强大的应用及管理功能,但是,在实际的应用中,这些原有的功能很难满足用户的需求.因此,SharePoint也提供了一套非常完整的对 ...

  6. Sharepoint学习笔记 –架构系列—10 Sharepoint的服务器端对象模型(Server Object Model) 2.内容层次结构

    Sharepoint的内容层次结构(Content Hierarchy)包括表示可发布数据项(publishable items),如列表项的类,还包括表示嵌套的数据容器(nested contain ...

  7. Sharepoint学习笔记 –架构系列—09 Sharepoint的服务器端对象模型(Server Object Model) 1.物理对象层次结构

    关于Sharepoint的服务器端对象模型的内容很庞大很繁杂,而事实上,我们在这里只把最关键的对象梳理一下,我们会从三个体系来大致描述它们. 这三个体系分别是: 1.物理对象层次结构(Physical ...

  8. SharePoint 2013开发入门探索(二)- 列表操作

    我们如何用代码对SharePoint列表做些例如增删改查的操作呢?如果您的程序可以部署到服务器上,就可以使用 服务器对象模型,因为服务器对象模型提供的功能最多,限制最少:否则可能要选择客户对象模型等其 ...

  9. 【转】2.2 SharePoint服务器端对象模型 之 访问网站和列表数据(Part 2)

    (二)列表(SPList) 列表是SharePoint中最为重要的数据容器,我们一般保存在SharePoint中的所有数据,都是保存在列表中(文档库也是一种列表),因此列表对象在SharePoint的 ...

最新文章

  1. 计算机组装安全常识,计算机组装与维护宝典
  2. int * const a, 和 const int* a,const PInt a;
  3. 报名照片审核处理工具_初级报名!你的照片怎么处理才能通过审核
  4. mssql2008极占内存
  5. java中数组操作常见的三个错误
  6. 事务及其传播行为的通俗易懂的讲解
  7. 计算机网络超详细笔记(二):物理层
  8. SHL笔试全攻略(转)
  9. 串级控制系统matlab仿真,锅炉串级三冲量给水控制系统的MATLAB 仿真
  10. Dll入口函数参数详解...
  11. Vagrant ssh permission denied
  12. 【HTML------樱花雨】
  13. C++UML类图的关系
  14. Win10:远程关机,拒绝访问
  15. 求和n!与1/n!,n从1取到20
  16. pic16多路adc采样
  17. 金融工程会用哪些计算机知识,金融工程专业对计算机的能力要求到底是什么
  18. 评测三款最流行的txt阅读器
  19. linux查看wifi信号命令_如何用wifi-linux检测AP信号强度
  20. Mr.Alright---安兔兔、cpu-Z等三方检测apk的主频和屏幕尺寸如何修改

热门文章

  1. bzoj 1006: [HNOI2008]神奇的国度
  2. CaseStudy-数据缓存出错
  3. MySQL 启动故障 处理 小记
  4. 第九讲 水晶报表的使用
  5. 逆向生成的Dimac.JMail工程及测试项目
  6. html table的边框线怎么变圆角_实现CSS3中的border-radius(边框圆角)示例代码
  7. python哪个更强大_Ruby和Python哪个更强大?学习分析
  8. mysql负载均衡分区_分区和负载均衡让MySQL更大更好
  9. 命令查看mysql端口映射_【转载】烂泥:如何利用telnet命令检测端口映射是否成功...
  10. 6001. mavlink 编译与移植