Как обновить элемент списка sharepoint через веб-сервисы, используя предложение where? - PullRequest
0 голосов
/ 02 июня 2010

Я хотел бы обновить элемент списка с помощью SharePoint, и я изо всех сил пытаюсь найти 1 достойный пример CAML.

Вот что я хочу сделать, в SQL мой запрос будет выглядеть примерно так

update [table] set field = 'value' где fieldID = id;

так что это означало бы, что у меня есть 1 элемент в списке, и я хотел бы обновить 1 поле, учитывая идентификатор этого элемента списка.

Я пробовал это, но это не работает:

batchElement.InnerXml = "<Method ID='1' Cmd='Update'>" +
            "<Field Name='DeliveryStatus'>" + newStatus.ToString() + "</Field>" +
            "<Where><Eq><FieldRef Name='ID' /><Value Type='Text'>" + id + "</Value></Eq></Where></Method>";

Ответы [ 2 ]

0 голосов
/ 03 июня 2010

Вам не нужно использовать предложение where для обновления элемента списка.

atchElement.InnerXml = "<Method ID='1' Cmd='Update'>" +
            "<Field Name='DeliveryStatus'>" + newStatus.ToString() + "</Field>" +
            "<FieldRef Name='ID' /><Value Type='Text'>" + id + "</Value></Method>";

Единственное, что вам нужно сделать, это предоставить удостоверение личности, как указано выше.

0 голосов
/ 02 июня 2010

Я добавлю этот ответ для сообщества, хотя он может не отвечать на все ваши вопросы.

 batchElement.InnerXml = "<Method ID='1' Cmd='Update'>" +
                "<Field Name='ID'>" + id + "</Field>" + 
            "<Field Name='DeliveryStatus'>" + newStatus.ToString() + "</Field></Method>";

Кажется, первое поле, которое вы указываете, это предложение where.

Я понятия не имею, как вы будете выполнять какую-либо расширенную фильтрацию с этим (нет или исключения или в предложениях или диапазонах) Но надеюсь, эта базовая информация поможет.

...