Lists.GetListCollection Method (Lists)
Returns the names and GUIDs for all lists in the site.

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

Visual Basic (Declaration)
<SoapDocumentMethodAttribute("http://schemas.microsoft.com/sharepoint/soap/GetListCollection", RequestNamespace:="http://schemas.microsoft.com/sharepoint/soap/", ResponseNamespace:="http://schemas.microsoft.com/sharepoint/soap/", Use:=SoapBindingUse.Literal, ParameterStyle:=SoapParameterStyle.Wrapped)> _
Public Function GetListCollection As XmlNode
Visual Basic (Usage)
Dim instance As Lists
Dim returnValue As XmlNode

returnValue = instance.GetListCollection
C#
[SoapDocumentMethodAttribute("http://schemas.microsoft.com/sharepoint/soap/GetListCollection", RequestNamespace="http://schemas.microsoft.com/sharepoint/soap/", ResponseNamespace="http://schemas.microsoft.com/sharepoint/soap/", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Wrapped)] 
public XmlNode GetListCollection ()

Return Value

A fragment in Collaborative Application Markup Language (CAML) in the following form that contains the names and GUIDs for the lists, and that can be assigned to a System.Xml.XmlNode object.
Xml
<Lists xmlns="http://schemas.microsoft.com/sharepoint/soap/">
   <List DocTemplateUrl=
      "" DefaultViewUrl="/TestWeb1/Lists/Announcements/AllItems.aspx" 
      ID="{8A98E2E5-B377-4D0E-931B-3AC25BD09926}" Title="Announcements" 
      Description="Use the Announcements list to post messages on the 
         home page of your site." 
      ImageUrl="/_layouts/images/itann.gif" 
         Name="{8A98E2E5-B377-4D0E-931B-3AC25BD09926}" 
      BaseType="0" ServerTemplate="104" 
         Created="20030613 18:47:12" Modified="20030613 18:47:12" 
      LastDeleted="20030613 18:47:12" Version="0" Direction="none" 
         ThumbnailSize="" WebImageWidth="" 
      WebImageHeight="" Flags="4096" ItemCount="1" 
         AnonymousPermMask="" RootFolder="" ReadSecurity="1" 
      WriteSecurity="1" Author="1" 
         EventSinkAssembly="" EventSinkClass="" 
         EventSinkData="" EmailInsertsFolder="" 
      AllowDeletion="True" AllowMultiResponses="False" 
         EnableAttachments="True" EnableModeration="False" 
      EnableVersioning="False" Hidden="False" MultipleDataList="False" 
         Ordered="False" ShowUser="True" />
   <List DocTemplateUrl=
      "" DefaultViewUrl="/TestWeb1/Lists/Contacts/AllItems.aspx" 
      ID="{9FFE6155-DB75-4E0C-B18C-095326112151}" Title="Contacts" 
      Description="Use the Contacts list for information about people 
         that your team works with." 
      ImageUrl="/_layouts/images/itcontct.gif" 
         Name="{9FFE6155-DB75-4E0C-B18C-095326112151}" 
      BaseType="0" ServerTemplate="105" Created="20030613 18:47:14" 
         Modified="20030613 18:47:14" 
      LastDeleted="20030613 18:47:14" Version="0" Direction="none" 
         ThumbnailSize="" WebImageWidth="" 
      WebImageHeight="" Flags="4096" ItemCount="0" 
         AnonymousPermMask="" RootFolder="" ReadSecurity="1" 
      WriteSecurity="1" Author="1" 
         EventSinkAssembly="" EventSinkClass="" EventSinkData="" 
      EmailInsertsFolder="" AllowDeletion="True" 
         AllowMultiResponses="False" EnableAttachments="True" 
      EnableModeration="False" EnableVersioning="False" Hidden="False" 
         MultipleDataList="False" 
      Ordered="False" ShowUser="True" />
      ...
</Lists>
Example

The following code example displays information about each of the lists on the current site.

This example requires that a using (Visual C#) or Imports (Visual Basic) directive be included for the System.Xml namespace.

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

Dim ndLists As XmlNode = listService.GetListCollection()

MessageBox.Show(ndLists.OuterXml)
C#
Web_Reference_Folder.Lists listService = new Web_Reference_Folder.Lists();
listService.Credentials= System.Net.CredentialCache.DefaultCredentials;

XmlNode ndLists = listService.GetListCollection();

MessageBox.Show(ndLists.OuterXml);
See Also

Tags :


Community Content

Mick Badran - MVP
This method only returns back the 'ListCollection' of the Root Site within a site collection.
Even though you may have a reference to 'http://server/subsite/sub-subsite/_vti_bin/lists.asmx' (in which GetListItems(....) etc. methods work within
the current context) - the results will reflect what is in the root site of the immediate sitecollection.

Easy way to test - create a list in one of your subsites, add a reference to the webservice (lists.asmx) via the correct Url,
and make a call to GetListCollection.


Tags :

sorokaworona
usage on subsites

It's not a problem. Just change the URL property after having created the instance of the service:

web_ref_name.Lists liservice=new web_ref_name.Lists();

liservice.URL=''http://server/subsite/sub-subsite/_vti_bin/lists.asmx'';

Tags :

magalabastro
ServerTemplate Attribute Corresponds to Type Attribute in List Schema in CAML (?)
http://msdn2.microsoft.com/en-us/library/ms415091.aspx
Tags :

Roger Willcocks
Lies. All Lies. What to know what I get...

System.Xml.

XmlNode n = svc.GetListCollection();
n.OuterXml == "0";

Not an error. Not an empty list. Not even a piece of XML. The number 0.
Every hour I deal with this sort of stupidity I fight the urge to hunt down a member of the dev team and kick them repeated.

Tags :

Page view tracker