Compartilhar via


Como a: Return itens de lista

Esta tarefa programação mostra como criar um Windows Form que usa o GetListItems método M:websvcLists.Lists.GetListItems(System.String,System.String,System.Xml.XmlNode,System.Xml.XmlNode,System.String,System.Xml.XmlNode,System.String) de serviço da Web de listas para retornar os itens de uma lista.

Procedimentos

Antes de começar, crie um aplicativo Windows conforme descrito em Guia de Introdução Com programaticamente personalizar uma Web Site SharePoint em Visual Studio. Para obter informações sobre configuração uma referência da Web para um Windows SharePoint Services serviço da Web, consulte Diretrizes de serviço da Web.

Para codificar adicionar para exibir a coleção de itens lista

  1. Depois de criar um projeto do Aplicativo do Windows e adicionando um referência da Web, aberto Form1 em modo Design, aberto o a Caixa de ferramentas e, em seguida, arrastar um Label controle rótulo e um Button botão controle até a forma.

  2. Clique com o botão direito do mouse o controle, clique Label1 propriedades e, em seguida, exclua o valor Label1 a partir de TextLabel1 propriedade texto do controle.

  3. Clique duas vezes o botão para exibir a Code Editor e adicionar o seguinte clique linhas de código para o Click manipulador de eventos:

                              'Declare and initialize a variable for the Lists Web service.
    Dim listService As New Web_Reference.Lists()
    
    'Authenticate the current user by passing their default 
    'credentials to the Web service from the system credential cache.
    listService.Credentials = System.Net.CredentialCache.DefaultCredentials
    
    'Set the Url property of the service for the path to a subsite.
    listService.Url = "http://Server_Name/Subsite_Name/_vti_bin/Lists.asmx"
    
    'Instantiate an XmlDocument object.
    Dim xmlDoc As New System.Xml.XmlDocument()
    
    'Assign values to the string parameters of the GetListItems method, 'using GUIDs for the listName and viewName variables. For listName, 'using the list display name will also work, but using the list GUID 
    'is recommended. For viewName, only the view GUID can be used. 
    'Using an empty string for viewName causes the default view 
    'to be used.
    Dim listName As String = "{17991794-81BB-494F-9910-CFBF1093A7CF}"
    Dim viewName As String = "{7137FFF8-48FF-4C69-8C76-0E3BBD1EA7F9}"
    Dim rowLimit As String = "150"
    
    'Use the CreateElement method of the document object to create 'elements for the parameters that use XML.
    Dim query As System.Xml.XmlElement = xmlDoc.CreateElement("Query")
    Dim viewFields As System.Xml.XmlElement = xmlDoc.CreateElement("ViewFields")
    Dim queryOptions As System.Xml.XmlElement = xmlDoc.CreateElement("QueryOptions")
    
    'To specify values for the parameter elements (optional), assign CAML fragments to the InnerXml property of each element.
    query.InnerXml = "<Where><Gt><FieldRef name=""ID"" />" + "<Value Type=""Counter"">3</Value></Gt></Where>"
    viewFields.InnerXml = "<FieldRef name=""Title"" />"
    queryOptions.InnerXml = ""
    
    'Declare an XmlNode object and initialize it with the XML response 'from the GetListItems method. The last parameter specifies 
    'the GUID of the Web site containing the list. Setting it to 
    'Nothing causes the Web site specified by the Url property 
    'to be used.
    Dim nodeListItems As System.Xml.XmlNode = listService.GetListItems(listName, viewName, query, viewFields, rowLimit, queryOptions, Nothing)
    
    'Loop through each node in the XML response and display each item.
    Dim listItem As System.Xml.XmlNode
    For Each listItem In  nodeListItems
       label1.Text += listItem.OuterXml
    Next listItem
    
                              /*Declare and initialize a variable for the Lists Web service.*/
    Web_Reference.Lists listService = new Web_Reference.Lists();
    
    /*Authenticate the current user by passing their default 
    credentials to the Web service from the system credential cache.*/
    listService.Credentials = 
        System.Net.CredentialCache.DefaultCredentials;
    
    /*Set the Url property of the service for the path to a subsite.*/
    listService.Url = 
        "http://Server_Name/Subsite_Name/_vti_bin/Lists.asmx";
    
    // Instantiate an XmlDocument object
    System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
    
    /* Assign values to the string parameters of the GetListItems method, using GUIDs for the listName and viewName variables. For listName, using the list display name will also work, but using the list GUID is recommended. For viewName, only the view GUID can be used. Using an empty string for viewName causes the default view 
    to be used.*/
    string listName = "{17991794-81BB-494F-9910-CFBF1093A7CF}";
    string viewName = "{7137FFF8-48FF-4C69-8C76-0E3BBD1EA7F9}";
    string rowLimit = "150";
    
    /*Use the CreateElement method of the document object to create elements for the parameters that use XML.*/
    System.Xml.XmlElement query = xmlDoc.CreateElement("Query");
    System.Xml.XmlElement viewFields = 
        xmlDoc.CreateElement("ViewFields");
    System.Xml.XmlElement queryOptions = 
        xmlDoc.CreateElement("QueryOptions");
    
    /*To specify values for the parameter elements (optional), assign CAML fragments to the InnerXml property of each element.*/
    query.InnerXml = "<Where><Gt><FieldRef name=\"ID\" />" +
        "<Value Type=\"Counter\">3</Value></Gt></Where>";
    viewFields.InnerXml = "<FieldRef name=\"Title\" />";
    queryOptions.InnerXml = "";
    
    /* Declare an XmlNode object and initialize it with the XML response from the GetListItems method. The last parameter specifies the GUID of the Web site containing the list. Setting it to null causes the Web site specified by the Url property to be used.*/
    System.Xml.XmlNode nodeListItems = 
        listService.GetListItems
        (listName, viewName,query,viewFields,rowLimit,queryOptions,null);
    
    /*Loop through each node in the XML response and display each item.*/
    foreach (System.Xml.XmlNode listItem in nodeListItems)
    {
        label1.Text += listItem.OuterXml;
    }
    

    Observação

    Forneça seus próprios valores para o listName, viewName e rowLimit variáveis que são usadas em de exemplo.

  4. O menu Debug, clique em iniciar para testar a forma. Clique em button1 para exibir a lista itens a partir de lista especificada.