src/T4Toolbox.VisualStudio/OutputFileManager.cs
/// <summary>
/// Adds projects, recursively, from the specified <paramref name="solutionItem" /> to the collection.
/// </summary>
Adds projects, recursively, from the specified  to the collection.
Adds projects recursively from the specified to the collection .
private static void AddAllProjects(Project solutionItem, IDictionary<string, Project> projects)
        {
            if (solutionItem.Kind == ProjectKinds.vsProjectKindSolutionFolder)
            {
                foreach (ProjectItem item in solutionItem.ProjectItems)
                {
                    if (item.SubProject != null)
                    {
                        AddAllProjects(item.SubProject, projects);
                    }
                }
            }
            else
            {
                try
                {
                    projects.Add(solutionItem.FullName, solutionItem);
                }
                catch (NotImplementedException)
                {
                }
            }
        }
private static void AddAllProjects ( Project solutionItem , IDictionary < string , Project > projects ) { if ( solutionItem . Kind == ProjectKinds . vsProjectKindSolutionFolder ) { foreach ( ProjectItem item in solutionItem . ProjectItems ) { if ( item . SubProject != null ) { AddAllProjects ( item . SubProject , projects ) ; } } } else { try { projects . Add ( solutionItem . FullName , solutionItem ) ; } catch ( NotImplementedException ) { } } }
Adds projects, recursively, from the specified  to the collection.
Adds projects recursively from the specified to the collection .
// Ignore projects that don't support FullName property.
solutionItem
Project
projects
IDictionary<string, Project>