2010-06-02 4 views
0

Я хотел бы обновить элемент списка с помощью SharePoint и пропустить, чтобы найти 1 достойный пример CAML.Как обновить элемент списка sharepoint через веб-службы, используя предложение where?

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

обновление [таблицы] задано поле = «значение» где fieldID = идентификатор;

, так что это означало бы, что у меня есть 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>"; 

ответ

0

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

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

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

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

0

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

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

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

+0

Что делать, если вы хотите обновить все элементы, скажем, что было поле Enabled - со значениями, установленными в true? –

+0

@JL Я думаю, вам нужно обновить элементы в цикле. Я этого раньше не делал. –

 Смежные вопросы

  • Нет связанных вопросов^_^