我可以使用list webservice updatelistitem方法的字段标题而不是字段ID来更新sharepoint列表项。 例如:msdn sample使用字段名称ID batchElement.InnerXml =“”+ “6”+ “修改后的第六项”+ “7”+ “修改后的第七项”+ “5”+ “”+ “添加项目”
由于我从sql db中提取信息以更新列表并且我不知道项目ID,我可以使用title作为条件来更新其他项目字段吗?
答案 0 :(得分:0)
当您说“我从sql db中提取信息”时,您是否在查询sharehe数据库?如果是这样的话。如果没有,并且您正在使用存储项目标题的外部数据库,则可能需要调用相同服务的GetListItems方法,使用查询返回基于“标题”字段的项目。查询将是这样的:
<Query>
<Where>
<Eq>
<FieldRef Name='Title' />
<Value Type='Text'>Title of item</Value>
</Eq>
</Where>
</Query>
或者,如果您需要更多,请将Eq元素嵌套在OR中,如此
<Query>
<Where>
<Or>
<Or>
<Eq>
<FieldRef Name='Title' />
<Value Type='Text'>Title of item</Value>
</Eq>
<Eq>
<FieldRef Name='Title' />
<Value Type='Text'>Other Title of item</Value>
</Eq>
</Or>
<Eq>
<FieldRef Name='Title' />
<Value Type='Text'>Yet another Title of item</Value>
</Eq>
</Or>
</Where>
</Query>
然后使用此调用结果中的ID来构建批处理xml。