SPListItemVersionCollection class

Represents a collection of SPListItemVersion objects.

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

public sealed class SPListItemVersionCollection : SPBaseCollection

Use the Versions property of the SPListItem class to return the collection of versions for a list item.

Use an indexer to return a single version from the collection. For example, if the collection is assigned to a variable named collListItemVersions, use collListItemVersions[index] in C#, or collListItemVersions(index) in Visual Basic, where index is the index number of the version in the collection. The lower the value of index, the more recent the version.

The following code example iterates through the items in a list and restores the previous version of the items if a field in the current version equals a specified value.

SPList oList = new SPSite("http://MySiteCollection").AllWebs["MyWebSite"].GetList("http://MySiteCollection/MyWebSite/Lists/MyList");

SPListItemCollection collListItems = oList.Items;

foreach (SPListItem oListItem in collListItems)
    if ((string)oListItem["Title"] == "MyValue")
        SPListItemVersionCollection collListItemVersions = 

        if (collListItemVersions.Count > 1)

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.