2011-02-11 2 views
3

간단하게 보이지만 SharePoint Services를 통해 일부 SharePoint (MOSS 2007) 목록과 상호 작용하는 응용 프로그램이 있습니다. . 한 서비스 호출에서 하나 이상의 목록 항목을 업데이트하고 싶습니다. 문제는 업데이트 할 필드가 이전 값과 동일한 항목 만 업데이트하려고합니다. 내 생각은 Lists.UpdateListItems를 사용하고 필터를 업데이트했지만 구문을 찾을 수 없었습니다. 의사에서SharePoint Lists.asmx UpdateListItems SET Field1 = NewValue WHERE Field1 = OldValue (업데이트 할 필드 필터링)

: 모든 많은 ListItems 가져 ID 곳 이름 : 곳 [이름] = "oldname의"내가 피하려는

하나 개의 솔루션 [챠트]에있는 모든 항목의 [이름]에 "NewName으로 업데이트" = "OldName"을 검색하고 각각을 반복하여 Name = "NewName"을 업데이트하십시오.

Microsoft.SharePoint 어셈블리를 참조 할 수 없으므로이 서비스 호출이 이상적입니다.

+0

ID를 얻고 반복의 문제는 무엇입니까? 성능 문제입니까? – sange

+0

예, 발견 된 각 레코드에 대해 서버를 공격 할 필요가 없기 때문에 한 번의 요청으로이 레코드를 적중시키기를 원했습니다. – Kandres22

답변

1

2 번은으로 전화를 걸어 일치하는 항목을 검색하고 하나는 업데이트를 수행해야합니다.

상당히 그래서 참여할 수 난 여기에 대해 (필요한 코드 포함) 블로그 게시물을 작성했습니다 : http://www.wirebear.com/blog/2011/02/11/batch-updates-with-sharepoint-2007-services/

+0

도움을 주셔서 감사합니다, 그것은 나를 위해 작동하고 귀하의 게시물은 매우 도움이되었다. 소원 SharePoint 서비스는 하나의 서비스 호출에서이 작업을 수행하는 방법을 제공했지만 지금은 기능적입니다. – Kandres22

관련 문제