internal Project SelectCustomizationProject(DTE dte) { this.parentTest.TestContext.WriteLine("SelectCustomizationProject"); foreach (Project project in dte.Solution.Projects) { //expand all first level nodes if (Helpers.IsCustomizationProject(project)) { this.parentTest.TestContext.WriteLine("Yes IsCustomizationProject " + project.Name); SelectProject(project); return(project); } if (project.Object is EnvDTE80.SolutionFolder) { EnvDTE80.SolutionFolder x = (EnvDTE80.SolutionFolder)project.Object; foreach (ProjectItem pitem in x.Parent.ProjectItems) { if (pitem.Object is Project) { Project p2 = pitem.Object as Project; if (Helpers.IsCustomizationProject(p2)) { this.parentTest.TestContext.WriteLine("Yes IsCustomizationProject " + project.Name); SelectProject(p2); return(p2); } } } } } throw new Exception("No CustomizationProject found in solution"); }
private Project AddProjectToSolutionFolder(Project project1, string folderName) { ThreadHelper.ThrowIfNotOnUIThread(); try { EnvDTE80.Solution2 solution = (EnvDTE80.Solution2)_dte.Solution; if (solution == null) { return(null); } string projFullname = project1.FullName; Project project = GetSolutionSubFolder(solution, folderName); if (project != null) { EnvDTE80.SolutionFolder folder = (EnvDTE80.SolutionFolder)project.Object; solution.Remove(project1); project1 = folder.AddFromFile(projFullname); } } catch (Exception) { return(null); } return(project1); }
/// <summary> /// Initializes an instance of the <see cref="SolutionFolderReference"/> class. /// </summary> /// <seealso cref="RecipeReference"/> public SolutionFolderReference(string recipe, EnvDTE80.SolutionFolder folder) : base(recipe, folder) { this.strategy = new SolutionFolderReferenceStrategy(); }