Sharepoint 2010 在使用webservice更新列表时,如何将自定义字段作为参数传递

Sharepoint 2010 在使用webservice更新列表时,如何将自定义字段作为参数传递,sharepoint-2010,Sharepoint 2010,我有一个名为projectlist的自定义列表。我想根据条件通过webservice使用一些值来更新此列表,比如更新项目列表列说project completedDate,其中projectname=“Sharepoint”和Status=“Completed” 为了更新此列表,我使用了从msdn站点获得的以下技术: System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); System.Xml.XmlElement elBatc

我有一个名为projectlist的自定义列表。我想根据条件通过webservice使用一些值来更新此列表,比如更新项目列表列说project completedDate,其中projectname=“Sharepoint”和Status=“Completed”

为了更新此列表,我使用了从msdn站点获得的以下技术:

System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
System.Xml.XmlElement elBatch = xmlDoc.CreateElement("Batch");
elBatch.SetAttribute("OnError", "Continue");
elBatch.SetAttribute("ListVersion", "1");
elBatch.SetAttribute("ViewName", projectlistviewName);

string strBatch = "<Method ID='1' Cmd='Update'>" +
"<Field Name='ID'>" +RowID + "</Field>" +
"<Field Name='ProjectCompletedDate'>ProjectCompletionDatevalue</Field></Method>" +
"<Method ID='1' Cmd='Update'><Field Name='ID' >" +RowID + "</Field>" +
"<Field Name='ProjectDescription'>"Project Description Value"</Field></Method>"; 

elBatch.InnerXml = strBatch;
XmlNode nreturn = ListReference.UpdateListItems("projectlist", elBatch);
System.Xml.XmlDocument xmlDoc=new System.Xml.XmlDocument();
System.Xml.xmlement elBatch=xmlDoc.CreateElement(“批处理”);
elBatch.SetAttribute(“OnError”、“Continue”);
SetAttribute(“ListVersion”、“1”);
SetAttribute(“ViewName”,projectlistviewName);
字符串strBatch=“”+
“”+RowID+“”+
“ProjectCompletionDatevalue”+
“”+RowID+“”+
“项目描述值”;
elBatch.InnerXml=strBatch;
XmlNode nreturn=ListReference.UpdateListItems(“项目列表”,elBatch);
上面的方法基于RoWId更新列表项,但要基于自定义字段(如projectname或Status字段)更新列表项(如果我将ID字段替换为任何自定义字段),我遇到以下错误:

“提供的URL包含无效的命令或值。请再次检查URL。”


我的目标是更新projectname=“Sharepoint”和Status=“Completed”所在的列表项。

据我所知,您必须提供项目ID-无论从何处获取行ID-尝试获取项目ID-否则,您可能必须构建一个过滤数据的自定义服务方法。 当做 KS