IVSSItems.GetEnumerator Method 

Gets an enumerator.

Namespace: Microsoft.VisualStudio.SourceSafe.Interop
Assembly: Microsoft.VisualStudio.SourceSafe.Interop (in microsoft.visualstudio.sourcesafe.interop.dll)

Syntax

'Declaration
Function GetEnumerator As IEnumerator
'Usage
Dim instance As IVSSItems
Dim returnValue As IEnumerator

returnValue = instance.GetEnumerator
IEnumerator GetEnumerator ()
IEnumerator^ GetEnumerator ()
IEnumerator GetEnumerator ()
function GetEnumerator () : IEnumerator

Return Value

An enumerator.

Remarks

[IDL]

HRESULT _NewEnum ([out,retval]IUnknown **ppIEnum);

This method is used explicitly in Visual C++. C# and Visual Basic use the foreach loop that uses the GetEnumerator method internally.

Example

The following example demonstrates how to iterate through the IVSSItems collection by usinga foreach loop that uses the GetEnumerator method internally.


using System;
using Microsoft.VisualStudio.SourceSafe.Interop;

public class IVSSTest
{
    public static void Main()
    {
        string testFolder = "$/TestFolder";
        
        // Create a VSSDatabase object.
        IVSSDatabase vssDatabase = new VSSDatabase();

        // Open a VSS database using network name for automatic user login.
        vssDatabase.Open(@"C:\VSSTestDB\srcsafe.ini", Environment.UserName, ""); 

        // Create a VSSItem specifying the desired folder.
        IVSSItem vssFolder = vssDatabase.get_VSSItem(testFolder, false);

        // Display folder contents.
        Console.Write("{0} contains:", vssFolder.Spec);
        foreach(IVSSItem vssItem in vssFolder.get_Items(false))
            Console.Write(" {0}", vssItem.Name);
    }
}

Output:

$/TestFolder contains: file1.txt file2.txt Folder1 Folder2


Imports System
Imports Microsoft.VisualStudio.SourceSafe.Interop

Module IVSSTest

    Public Sub Main()

        Dim testFolder As String = "$/TestFolder"

        ' Create a VSSDatabase object.
        Dim vssDatabase As IVSSDatabase = New VSSDatabase

        ' Open a VSS database using network name for automatic user login.
        vssDatabase.Open("C:\VSSTestDB\srcsafe.ini", Environment.UserName, "")

        ' Create a VSSItem specifying the desired folder.
        Dim vssFolder As IVSSItem = vssDatabase.VSSItem(testFolder, False)

        ' Display folder contents.
        Console.Write("{0} contains:", vssFolder.Spec)
        Dim vssItem As IVSSItem
        For Each vssItem In vssFolder.Items(False)
            Console.Write(" {0}", vssItem.Name)
        Next vssItem

    End Sub

End Module

Output:

$/TestFolder contains: file1.txt file2.txt Folder1 Folder2

See Also

Reference

IVSSItems Interface
IVSSItems Members
Microsoft.VisualStudio.SourceSafe.Interop Namespace