Compartilhar via


Lists.GetListItemChanges Method

Retorna as alterações feitas a lista desde a data e hora especificadas.

Web Service: ListsWeb Reference: http://<Site>/_vti_bin/Lists.asmx

Syntax

'Declaração
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sharepoint/soap/GetListItemChanges", RequestNamespace:="https://schemas.microsoft.com/sharepoint/soap/", ResponseNamespace:="https://schemas.microsoft.com/sharepoint/soap/", Use:=SoapBindingUse.Literal, ParameterStyle:=SoapParameterStyle.Wrapped)> _
PublicFunctionGetListItemChanges ( _
    listNameAsString, _
    viewFieldsAsXmlNode, _
    sinceAsString, _
    containsAsXmlNode _
) AsXmlNode
'Uso
DiminstanceAsListsDimlistNameAsStringDimviewFieldsAsXmlNodeDimsinceAsStringDimcontainsAsXmlNodeDimreturnValueAsXmlNodereturnValue = instance.GetListItemChanges(listName, viewFields, since, contains)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sharepoint/soap/GetListItemChanges", RequestNamespace="https://schemas.microsoft.com/sharepoint/soap/", ResponseNamespace="https://schemas.microsoft.com/sharepoint/soap/", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Wrapped)] 
publicXmlNodeGetListItemChanges (
    stringlistName,
    XmlNodeviewFields,
    stringsince,
    XmlNodecontains
)

Parameters

  • listName
    Uma seqüência de caracteres que contém o título ou GUID para a lista. Ao consultar a tabela UserInfo, a seqüência de caracteres contém "UserInfo".
  • viewFields
    Um elemento ViewFields que especifica quais campos retornam na consulta e em que ordem, e que pode ser atribuída a um objeto System.Xml.XmlNodeViewFields,as in o exemplo a seguir.

    <ViewFields><FieldRef Name="ID" />
    <FieldRef Name="Title" /></ViewFields>
    
  • since
    Uma seqüência de caracteres que contém a data e hora no formato ISO8601 Tempo Universal Coordenado (UTC) a partir do qual iniciar Recuperando alterações na lista. O valor desse parâmetro geralmente é recuperado de uma resposta SOAP anterior. Se esse valor for null,a consulta retorna todos os itens na lista.
  • contains
    Um elemento Contains que define filtro personalizado para a consulta e que pode ser atribuída a um objeto System.Xml.XmlNodeContains,as in o exemplo a seguir.

    <Contains>
       <FieldRef Name="Status"/>
       <Value Type="Text">Complete</Value>
    </Contains>
    

    Este parâmetro pode conter null.

Return Value

Um fragmento XML na forma a seguir que contém as alterações e que pode ser atribuída a um objeto System.Xml.XmlNode:

<listitems xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" 
  xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" 
  xmlns:rs="urn:schemas-microsoft-com:rowset" 
  xmlns:z="#RowsetSchema" 
  TimeStamp="2007-03-23T22:23:18Z" 
  xmlns="https://schemas.microsoft.com/sharepoint/soap/">
  <rs:data ItemCount="2">
    <z:row ows_Attachments="0" 
      ows_LinkTitle="Title1" 
      ows_Modified="2007-03-08T23:01:48Z" 
      ows_MetaInfo="24;#" 
      ows__ModerationStatus="0" 
      ows__Level="1" 
      ows_Title="Title1" 
      ows_ID="24" 
      ows_owshiddenversion="1" 
      ows_UniqueId="24;#{1C6F4446-9D98-49F5-9A1C-17B0FDEA8558}" 
      ows_FSObjType="24;#0" 
      ows_Created_x0020_Date="24;#2007-03-08T23:01:48Z" 
      ows_Created="2007-03-08T23:01:48Z" 
      ows_FileLeafRef="24;#24_.000" 
      ows_FileRef="24;#Lists/Announcements/24_.000" />
    <z:row ows_Attachments="0" 
      ows_LinkTitle="Title2" 
      ows_Modified="2007-03-23T22:24:40Z" 
      ows_MetaInfo="27;#" 
      ows__ModerationStatus="0" 
      ows__Level="1" 
      ows_Title="Title2" 
      ows_ID="27" 
      ows_owshiddenversion="1" 
      ows_UniqueId="27;#{D589D857-391B-43BD-A1E9-2C36D718BB82}" 
      ows_FSObjType="27;#0" 
      ows_Created_x0020_Date="27;#2007-03-23T22:24:40Z" 
      ows_Created="2007-03-23T22:24:40Z" 
      ows_FileLeafRef="27;#27_.000" 
      ows_FileRef="27;#Lists/Announcements/27_.000" />
      ...
  </rs:data>
</listitems>

Example

O exemplo de código a seguir exibe informações sobre os itens em uma lista que foram alterados após uma data especificada. O exemplo usa um objeto XmlDocument para criar objetos XmlNode de parâmetros.

Esse exemplo requer que um using (Visual C#) ou Imports (Visual Basic) diretiva estar incluído para o namespace System.Xml.

Dim listService As New Web_Reference_Folder.Lists()
listService.Credentials = System.Net.CredentialCache.DefaultCredentials

Dim xmlDoc = New System.Xml.XmlDocument()

Dim ndViewFields As XmlNode = 
    xmlDoc.CreateNode(XmlNodeType.Element, "ViewFields", "")
Dim ndContains As XmlNode = 
    xmlDoc.CreateNode(XmlNodeType.Element, "Contains", "")

ndViewFields.InnerXml = "<FieldRef Name='Field1'/>" + _
    "<FieldRef Name='Field2'/><FieldRef Name='Field3' />"
ndContains.InnerXml = "<FieldRef Name='Field'/>" + _
    "<Value Type='Number'>Number</Value>"

Try

    Dim ndListChanges As XmlNode = 
            listService.GetListItemChanges("List_Name", _
        ndViewFields, "2003-06-18T00:00:00Z", ndContains)

    MessageBox.Show(ndListChanges.OuterXml)

    Catch ex As System.Web.Services.Protocols.SoapException

        MessageBox.Show("Message:" + ControlChars.Lf + ex.Message + 
                ControlChars.Lf + _
            "Detail:" + ControlChars.Lf + ex.Detail.InnerText + 
                ControlChars.Lf + _
            "StackTrace:" + ControlChars.Lf + ex.StackTrace)

End Try
Web_Reference_Folder.Lists listService = new Web_Reference_Folder.Lists();
listService.Credentials= System.Net.CredentialCache.DefaultCredentials;

XmlDocument xmlDoc = new System.Xml.XmlDocument();

XmlNode ndViewFields = xmlDoc.CreateNode(XmlNodeType.Element,"ViewFields","");
XmlNode ndContains = xmlDoc.CreateNode(XmlNodeType.Element,"Contains","");

ndViewFields.InnerXml = "<FieldRef Name='Field1'/>" + 
    "<FieldRef Name='Field2'/><FieldRef Name='Field3' />";
ndContains.InnerXml = "<FieldRef Name='Field'/>" + 
    "<Value Type='Number'>Number</Value>";

try
{
   XmlNode ndListChanges = listService.GetListItemChanges("List_Name", 
       ndViewFields, "2003-06-18T00:00:00Z", ndContains);
   MessageBox.Show(ndListChanges.OuterXml);
}

catch (System.Web.Services.Protocols.SoapException ex)
{
    MessageBox.Show("Message:\n" + ex.Message + "\nDetail:\n" + 
            ex.Detail.InnerText + 
        "\nStackTrace:\n" + ex.StackTrace);
}

See Also

Reference

Lists Class
Lists Members
Lists Web Service