sharepoint SPFolder的使用

29 篇文章 0 订阅

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

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

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

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

    而在SPWebSPList的对象模型中,都有该网站(或列表)所在的根目录的信息,可以直接通过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);

    }

    }


    • 0
      点赞
    • 1
      收藏
      觉得还不错? 一键收藏
    • 0
      评论

    “相关推荐”对你有帮助么?

    • 非常没帮助
    • 没帮助
    • 一般
    • 有帮助
    • 非常有帮助
    提交
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值