zoukankan      html  css  js  c++  java
  • 【MOSS】SPListItems操作

    1、快速删除SPListItems集合

    在Sharepoint开发中可能需要一次删除成百上千条记录,这时候如果轮询SPList.Items并直接调用该对象的删除方法来删除的话性能极差,会叫你崩溃。

    下面介绍一个快速删除大量数据的方法:

    using (SPWeb myweb = mysite.AllWebs[“XXXX”])

    {

    SPListItemCollection itemsCollection=CurrentList.Items;

    StringBuilder sbDelete = new StringBuilder();

    sbDelete.Append("<?xml version="1.0" encoding="UTF-8"?><Batch>");

    foreach (SPListItem item in itemsCollection)

    {

        sbDelete.Append("<Method>");

        sbDelete.Append("<SetList Scope="Request">" + CurrentList.ID + "</SetList>");

        sbDelete.Append("<SetVar Name="ID">" + Convert.ToString(item.ID) + "</SetVar>");

        sbDelete.Append("<SetVar Name="Cmd">Delete</SetVar>");

        sbDelete.Append("</Method>");

    }

    sbDelete.Append("</Batch>");

    try

    {

        myweb.ProcessBatchData(sbDelete.ToString());

    }

    catch (Exception ex)

    {

    Console.WriteLine("Delete failed: " + ex.Message);

    throw;

    }

    }

    要非常注意的是使用该方法大量删除的条目将进入回收站,按照这里的一篇文章的说法,大量的条目在回收站会在某一天导致你的服务器和数据库CPU被占用达100%

    2、SPListItem属性参考

    假如访问网站地址为:

    http://www.xxx.com/it/Documents/VS.txt

    属性                                                       名称值
    item.File.ServerRelativeUrl                        /it/Documents/VS.txt
    Item.URL                                               Documents/VS.txt
    Item.File.Url                                           Documents/VS.txt
    Item.DisplayName                                   VS
    item.Name                                              VS.txt

  • 相关阅读:
    Spring Boot----SpringData
    Spring Boot----整合MyBatis
    Spring Boot----整合jdbc和整合Durid数据源
    Spring Boot----嵌入式servlet和外置servlet使用
    大数据 CDH 5.8 安装
    Java 单例模式
    python 常用方法
    使用wepy开发微信小程序商城第三篇:购物车(布局篇)
    js时间戳转化成日期格式
    使用wepy开发微信小程序商城第二篇:路由配置和页面结构
  • 原文地址:https://www.cnblogs.com/BruceGoGo/p/3710360.html
Copyright © 2011-2022 走看看