Я пытаюсь добавить элемент в список в Sharepoint. На данный момент я пытаюсь добавить элемент через CAMLДобавление ListItem в список в Sharepoint 2007
Я могу прочитать список и запросить список, но я не смог добавить его в список. Все примеры, которые я видел, обновляют список, я бы ожидал, что он должен быть достаточно похожим процессом для добавления элемента.
вот как я тестирую его на данный момент. SPLists является веб-ссылка на HTTP: ///_vti_bin/lists.asmx
void Test(){
var listService = new SPLists.Lists();
string strBatch ="<Method ID='1' Cmd='New'><Field Name='Title'>Test</Field></Method>";
XmlDocument xmlDoc = new System.Xml.XmlDocument();
System.Xml.XmlElement elBatch = xmlDoc.CreateElement("Batch");
elBatch.SetAttribute("OnError", "Continue");
elBatch.SetAttribute("ListVersion", "1");
elBatch.InnerXml = strBatch;
XmlNode ndReturn = listService.UpdateListItems("TestList",elBatch);
Console.Write(ndReturn.OuterXml);
Console.WriteLine("");
}
someone already asked a similar/same question here на SO, но не ответил
Редактировать
Это ошибка, я получаю
<Results xmlns="http://schemas.microsoft.com/sharepoint/soap/">
<Result ID="1,New">
<ErrorCode>0x81020026</ErrorCode>
<ErrorText>The list that is referenced here no longer exists.</ErrorText>
</Result>
</Results>
Когда я настраивал веб-ссылку, указывал ее на правильный сайт и даже смотрел на список в s harepoint, чтобы убедиться, что он есть.
(1) Добавьте 'try ... catch ...' вокруг 'UpdateListItems' и проверьте, не создано ли исключение. (2) Вот пример * add item *: http://msdn.microsoft.com/en-us/library/ms440289.aspx. –
да, я сделал это. но ошибка не очень полезна. –
оказался полезнее, чем я думал. Как только я нашел проблему, ошибка имела смысл. –