【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
轉載于:https://www.cnblogs.com/BruceGoGo/p/3710360.html
總結
以上是生活随笔為你收集整理的【MOSS】SPListItems操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 博客安家了
- 下一篇: [转]php获取含中文字符串长度