Я пытаюсь использовать 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. Код ошибки: 0x7714c730. Невозможно использовать имя файла, которое вы указали, это имя существующего файла или каталога».
кажется, что код ошибки генерируется случайным образом.
googling о том, что немного кажется, что это теоретически сообщение об ошибке доступа, но я работаю как суперпользователь в моей машине dev.