Lists.UpdateListItems Method is used to add, delete, or update the specified items in a list on the sharepoint site.
It is part of web service : http://<Site>/_vti_bin/Lists.asmx
Step 1:
Add Web Reference to http://<Site>/_vti_bin/Lists.asmx to C# project
Step 2 :
Build a CAML Query using C# code . Refer the code below :
StringBuilder camlQuery = new StringBuilder();
camlQuery.Append("<Method ID='1' Cmd='New'>");
camlQuery.Append(string.Format("<Field Name=ID>{0}</Field>", "12345");
camlQuery.Append(string.Format("<Field Name='Name'>{0}</Field>", "Santosh"));
camlQuery.Append(string.Format("<Field Name='Role'>{0}</Field>", "Manager"));
camlQuery.Append("</Method>");
Note : Make sure Field Name refers to internal name of the field
Step 3 :
Call UpdateListItem method using the below code :
XmlNode ndReturn;
XmlNode ndUpdateStatus;
string listName = "EmployeeList" ; // Set correct list name to update or insert
list.Url = "https://sharepointserver/_vti_bin/lists.asmx"; //Provide correct url of List Web service
ndReturn = list.GetListAndView(listName, "");
XmlDocument xmlDocQuery = new System.Xml.XmlDocument();
System.Xml.XmlElement elBatch = xmlDocQuery.CreateElement("Batch");
elBatch.SetAttribute("ListVersion", "1");
elBatch.SetAttribute("ViewName", ndReturn.ChildNodes[1].Attributes["Name"].Value);
elBatch.InnerXml = CAMLQuery; // Set the CAMLQuery formed in Step 2
ndUpdateStatus = list.UpdateListItems(ndReturn.ChildNodes[0].Attributes["Name"].Value, elBatch);
Step 4 :
Check whether list was inseted or not using below C# code.
if ( ndUpdateStatus != null )
{
if (ndUpdateStatus.ChildNodes[0] != null)
{
if (ndUpdateStatus.ChildNodes[0].InnerText == "0x00000000")
{
// UpdateListItem success
}
else
{
// UpdateListItem failure
}
}
else
{
// UpdateListItem failure
}
}
else
{
// UpdateListItem failure
}
Lists.UpdateListItems Method is successful if return from this method has ndUpdateStatus.ChildNodes[0].InnerText == "0x00000000")
Hope this article is useful for people integrating C# code with Sharepoint List. Please mail me your feedback at : contactus@alltechnicalfaqs.com
It is part of web service : http://<Site>/_vti_bin/Lists.asmx
Step 1:
Add Web Reference to http://<Site>/_vti_bin/Lists.asmx to C# project
Step 2 :
Build a CAML Query using C# code . Refer the code below :
StringBuilder camlQuery = new StringBuilder();
camlQuery.Append("<Method ID='1' Cmd='New'>");
camlQuery.Append(string.Format("<Field Name=ID>{0}</Field>", "12345");
camlQuery.Append(string.Format("<Field Name='Name'>{0}</Field>", "Santosh"));
camlQuery.Append(string.Format("<Field Name='Role'>{0}</Field>", "Manager"));
camlQuery.Append("</Method>");
Note : Make sure Field Name refers to internal name of the field
Step 3 :
Call UpdateListItem method using the below code :
XmlNode ndReturn;
XmlNode ndUpdateStatus;
string listName = "EmployeeList" ; // Set correct list name to update or insert
list.Url = "https://sharepointserver/_vti_bin/lists.asmx"; //Provide correct url of List Web service
ndReturn = list.GetListAndView(listName, "");
XmlDocument xmlDocQuery = new System.Xml.XmlDocument();
System.Xml.XmlElement elBatch = xmlDocQuery.CreateElement("Batch");
elBatch.SetAttribute("ListVersion", "1");
elBatch.SetAttribute("ViewName", ndReturn.ChildNodes[1].Attributes["Name"].Value);
elBatch.InnerXml = CAMLQuery; // Set the CAMLQuery formed in Step 2
ndUpdateStatus = list.UpdateListItems(ndReturn.ChildNodes[0].Attributes["Name"].Value, elBatch);
Step 4 :
Check whether list was inseted or not using below C# code.
if ( ndUpdateStatus != null )
{
if (ndUpdateStatus.ChildNodes[0] != null)
{
if (ndUpdateStatus.ChildNodes[0].InnerText == "0x00000000")
{
// UpdateListItem success
}
else
{
// UpdateListItem failure
}
}
else
{
// UpdateListItem failure
}
}
else
{
// UpdateListItem failure
}
Lists.UpdateListItems Method is successful if return from this method has ndUpdateStatus.ChildNodes[0].InnerText == "0x00000000")
Hope this article is useful for people integrating C# code with Sharepoint List. Please mail me your feedback at : contactus@alltechnicalfaqs.com
No comments:
Post a Comment