次の方法で共有


Lists.GetListItemChanges メソッド (websvcLists)

指定した日時以降にリストに対して行った変更を返します。

名前空間: websvcLists
アセンブリ: STSSOAP (stssoap.dll 内)

構文

'宣言
<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)> _
Public Function GetListItemChanges ( _
    listName As String, _
    viewFields As XmlNode, _
    since As String, _
    contains As XmlNode _
) As XmlNode
'使用
Dim instance As Lists
Dim listName As String
Dim viewFields As XmlNode
Dim since As String
Dim contains As XmlNode
Dim returnValue As XmlNode

returnValue = 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)] 
public XmlNode GetListItemChanges (
    string listName,
    XmlNode viewFields,
    string since,
    XmlNode contains
)

パラメータ

  • listName
    リストのタイトルまたは GUID のどちらかを含む文字列。UserInfo テーブルに対してクエリを実行する場合、文字列に "UserInfo" を含めます。
  • viewFields
    次の例に示すように、クエリで返されるフィールドとその順序を指定する ViewFields 要素。この要素は System.Xml.XmlNode オブジェクトに割り当てることができます。

    <ViewFields><FieldRef Name="ID" />
    <FieldRef Name="Title" /></ViewFields>
    
  • since
    協定世界時 (UTC) ISO8601 形式の日時を含む文字列。リストにおける変更の取得が、この日時から開始されます。このパラメータの値は、通常、優先される SOAP 応答から取得されます。この値が null の場合、クエリによって、リスト内のすべてのアイテムが返されます。
  • contains
    次の例に示すように、クエリ用のカスタム フィルタを定義し、System.Xml.XmlNode オブジェクトに割り当てることができる Contains 要素。

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

    このパラメータには null を含めることができます。

戻り値

変更内容を含み、System.Xml.XmlNode オブジェクトに割り当てることができる XML フラグメント。次のような形式になります。

<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>

次のコード例では、指定した日付以降に変更された、リスト内のアイテムに関する情報を表示します。この例では、XmlDocument オブジェクトを使用して、パラメータ用に XmlNode オブジェクトを作成します。

この例では、using (Visual C#) または Imports (Visual Basic) ディレクティブが 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);
}

関連項目

参照

Lists クラス
Lists メンバ
websvcLists 名前空間