SPWeb.ProcessBatchData Method
Processes the specified commands for sending multiple requests to the server per transaction.
Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Available in Sandboxed Solutions: Yes
Available in SharePoint Online
Syntax
'Declaration
Public Function ProcessBatchData ( _
strBatchData As String _
) As String
'Usage
Dim instance As SPWeb
Dim strBatchData As String
Dim returnValue As String
returnValue = instance.ProcessBatchData(strBatchData)
public string ProcessBatchData(
string strBatchData
)
Parameters
strBatchData
Type: System.StringA Collaborative Application Markup Language (CAML) that contains the commands, which consists of a Batch element and any number of subordinate Method elements that each specify a SharePoint Foundation remote procedure call (RPC) method.
Return Value
Type: System.String
The results of the processes.
Remarks
To use this method to delete a document in a Document Library, pass the file path to the owsfileref variable in the Method elements.
Examples
The following code example uses the ProcessBatchData method to add two items to the Announcements list of a specified site in the current site collection.
Using webSite As SPWeb = SPContext.Current.Site.OpenWeb("Website")
Dim list As SPList = webSite.Lists("Announcements")
Dim guid As System.Guid = list.ID
Dim myGuid As String = guid.ToString()
Dim strPost As String = "<?xml version='1.0' encoding='UTF-8'?>" _
& "<ows:Batch OnError='Return'>" _
& "<Method ID='A1'>" _
& "<SetList> & myGuid & "</SetList>" _
& "<SetVar Name='ID'>New</SetVar>" _
& "<SetVar Name='Cmd'>Save</SetVar>" _
& "<SetVar Name='urn:schemas-microsoft-com:office:office#Title'>" _
& "New Manager</SetVar><SetVar Name=" _
& "'urn:schemas-microsoft-com:office:office#Body'>" _
& "Congratulations to Mary for her promotion!</SetVar>" _
& "<SetVar Name=" _
& "'urn:schemas-microsoft-com:office:office#Expires'>" _
& "2003-09-14T00:00:00Z</SetVar></Method>" _
& "<Method ID='A2'>" _
& "<SetList>" & myGuid & "</SetList>" _
& "<SetVar Name='ID'>New</SetVar>" _
& "<SetVar Name='Cmd'>Save</SetVar>" _
& "<SetVar Name='urn:schemas-microsoft-com:office:office#Title'>" _
& "New Technical Consultant</SetVar>" _
& "<SetVar Name='urn:schemas-microsoft-com:office:office#Body'>" _
& "Welcome to the team, John!</SetVar>" _
& "<SetVar Name=" _
& "'urn:schemas-microsoft-com:office:office#Expires'>" _
& "2003-10-15T00:00:00Z</SetVar></Method></ows:Batch>"
Dim processBatch As String = webSite.ProcessBatchData(strPost)
End Using
using (SPWeb oWebsite = SPContext.Current.Site.OpenWeb("Website_URL"))
{
SPList oList = oWebsite.Lists["Announcements"];
System.Guid guid = oList.ID;
string strGuid = guid.ToString();
string strPost = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" +
"<ows:Batch OnError=\"Return\">" +
"<Method ID=\"A1\"><SetList>" + strGuid + "</SetList>" +
"<SetVar Name=\"ID\">New</SetVar>" +
"<SetVar Name=\"Cmd\">Save</SetVar>" +
"<SetVar Name=" +
"\"urn:schemas-microsoft-com:office:office#Title\">" +
"New Manager</SetVar>" +
"<SetVar Name=" +
"\"urn:schemas-microsoft-com:office:office#Body\">" +
"Congratulations to Mary for her promotion!</SetVar>" +
"<SetVar Name=" +
"\"urn:schemas-microsoft-com:office:office#Expires\">" +
"2003-09-14T00:00:00Z</SetVar>" +
"</Method>" +
"<Method ID=\"A2\">" +
"<SetList>" + strGuid + "</SetList>" +
"<SetVar Name=\"ID\">New</SetVar>" +
"<SetVar Name=\"Cmd\">Save</SetVar>" +
"<SetVar Name=" +
"\"urn:schemas-microsoft-com:office:office#Title\">" +
"New Technical Consultant</SetVar>" +
"<SetVar Name=" +
"\"urn:schemas-microsoft-com:office:office#Body\">" +
"Welcome to the team, John!</SetVar>" +
"<SetVar Name=" +
"\"urn:schemas-microsoft-com:office:office#Expires\">" +
"2007-10-15T00:00:00Z</SetVar>" +
"</Method>" +
"</ows:Batch>";
string strProcessBatch = oWebsite.ProcessBatchData(strPost);
}
Note
Certain objects implement the IDisposable interface, and you must avoid retaining these objects in memory after they are no longer needed. For information about good coding practices, see Disposing Objects.