如何更新列表项?

时间:2014-01-29 23:10:30

标签: c# sharepoint

我一直在尝试使用c#以编程方式更新sharepoint网站上的列表项。 我能够成功地完成WebServerReference。但是我不明白以下是什么:

ListId, viewId , FieldName ID

在我从here获取的以下代码中 我应该用这些ListId, viewId , FieldName ID值替换我的值。我不知道哪里可以获得这些价值。我一直在仔细检查我的sharepoint网站,但无法在任何地方找到这些值。

/*Get Name attribute values (GUIDs) for list and view. */
System.Xml.XmlNode ndListView = listService.GetListAndView("MyList", "");
string strListID = ndListView.ChildNodes[0].Attributes["Name"].Value;
string strViewID = ndListView.ChildNodes[1].Attributes["Name"].Value;

/*Create an XmlDocument object and construct a Batch element and its
attributes. Note that an empty ViewName parameter causes the method to use the default view. */
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
System.Xml.XmlElement batchElement = doc.CreateElement("Batch");
batchElement.SetAttribute("OnError", "Continue");
batchElement.SetAttribute("ListVersion", "1");
batchElement.SetAttribute("ViewName", strViewID);

/*Specify methods for the batch post using CAML. To update or delete, 
specify the ID of the item, and to update or add, specify 
the value to place in the specified column.*/
batchElement.InnerXml = "<Method ID='1' Cmd='Update'>" +
   "<Field Name='ID'>6</Field>" +
   "<Field Name='Title'>Modified sixth item</Field></Method>" +
   "<Method ID='2' Cmd='Update'><Field Name='ID'>7</Field>" +
   "<Field Name='Title'>Modified seventh item</Field></Method>" +
   "<Method ID='3' Cmd='Delete'><Field Name='ID'>5</Field>" +
   "</Method><Method ID='4' Cmd='New'>" +
   "<Field Name='Title'>Added item</Field></Method>";

1 个答案:

答案 0 :(得分:1)

尝试浏览列表设置页面以获取URL中的列表ID,修改视图页面以从URL获取视图ID,然后单击列表设置页面以获取URL中的字段名称。或者您可以尝试使用Codeplex上的SharePoint Manager轻松查找此信息。