SPQuery.ViewAttributes property

Gets or sets the attributes of the view used in the query.

Namespace:  Microsoft.SharePoint
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)


Public Property ViewAttributes As String
Dim instance As SPQuery
Dim value As String

value = instance.ViewAttributes

instance.ViewAttributes = value
public string ViewAttributes { get; set; }

Property value

Type: System.String
A string that contains the view attributes.


The ViewAttributes property contains attributes of the View element that is used in Collaborative Application Markup Language. For example, if the Scope attribute is set to Recursive (Scope="Recursive"), the query displays all the files within a document library, including ones in subfolders. If it is set to anything else, the query displays only files in the top folder.


For information about how to use Language-Integrated Query (LINQ) queries to retrieve list items in SharePoint Foundation, see Managing Data with LINQ to SharePoint.


The following code example sets a recursive scope for a query and displays all files contained within a specified document library.

This example requires using directives (Imports in Microsoft Visual Basic) for the Microsoft.SharePoint and Microsoft.SharePoint.Utilities namespaces.

Dim webSite As SPWeb = SPContext.Current.Site.AllWebs("Site_Name")
    Dim list As SPList = webSite.Lists("DocLib_Name")
    Dim view As SPView = list.Views("View_Name")

    Dim query As New SPQuery(view)
    query.ViewAttributes = "Scope=""Recursive"""
    Dim myItems As SPListItemCollection = list.GetItems(query)

    Dim item As SPListItem
    For Each item In myItems
        Response.Write((SPEncode.HtmlEncode(item("Name")) + "<BR>"))
    Next item
End Try
using (SPWeb oWebsite = SPContext.Current.Site.AllWebs["Site_Name"])
    SPList oList = oWebsite.Lists["DocLib_Name"];
    SPView oView = oList.Views["View_Name"];

    SPQuery oQuery = new SPQuery(oView);
    oQuery.ViewAttributes = "Scope=\"Recursive\"";
    SPListItemCollection collListItemsAvailable = 

    foreach (SPListItem oListItemAvailable in collListItemsAvailable)
        Response.Write(SPEncode.HtmlEncode(oListItemAvailable["Name"]) + 


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.

See also


SPQuery class

SPQuery members

Microsoft.SharePoint namespace