1
我想使用ProcessBatchData,但它只是沒有響應。 我創建了下面的代碼ProcessBatchData沒有響應,uls錯誤
using (SPSite site = new SPSite("siteurl"))
{
using (SPWeb web = site.OpenWeb())
{
web.AllowUnsafeUpdates = true;
StringBuilder sb = new StringBuilder();
SPFolder folder = web.GetFolder("folderurl");
SPDocumentLibrary docLib = folder.DocumentLibrary;
List<SPListItem> files = docLib.GetItems(new SPQuery() { Folder = folder, ViewAttributes = "Scope=\"Recursive\"" }).Cast<SPListItem>().ToList();
SPListItem f = files[0];
sb.Append("<?xml version=\"1.0\" encoding=\"UTF-8\"?><ows:Batch OnError=\"Return\">");
sb.Append("<Method ID=\"1\">");
sb.Append("<SetList Scope=\"Request\">" + docLib.ID + "</SetList>");
sb.Append("<SetVar Name=\"ID\">" + f.ID + "</SetVar>");
sb.Append("<SetVar Name=\"urn:schemas-microsoft-com:office:office#Title\">It is Updated</SetVar>");
sb.Append("<SetVar Name=\"Cmd\">Delete</SetVar>");
sb.Append("</Method>");
sb.Append("</ows:Batch>");
web.ProcessBatchData(sb.ToString());
web.Update();
}
}
沒有任何反應,甚至不是一個錯誤的樣本控制檯應用程序。在ULS中,我發現這個錯誤:
「Batchmgr Method error。Errorcode:0x7714c730。您指定的文件名無法使用,它可能是現有文件或目錄的名稱。
看來Errorcode是隨機生成的。
谷歌搜索這似乎是理論上這是一個訪問拒絕錯誤消息,但我作爲超級用戶在我的開發機器運行。