public static ProjectFolder GetFolder(string folderName,List<ProjectFolder> folders,out bool Exists) { ProjectFolder folder = null; Exists = false; foreach (ProjectFolder folderCheck in folders) { if (folderCheck.Name.ToLower() == folderName.ToLower()) { Exists = true; folder = folderCheck; break; } } if (folder == null) { folder = new ProjectFolder(); folder.Name = folderName; } return folder; }
public void GetFolderProjectStructure(DirectoryInfo dirInfo,ProjectFolder parentFolder) { foreach (DirectoryInfo temp in dirInfo.GetDirectories()) { ProjectFolder folder = new ProjectFolder(); folder.Name = temp.Name; folder.Parent = parentFolder; if (parentFolder == null) { this.ProjectFolders.Add(folder); } else { parentFolder.Folders.Add(folder); } GetFolderProjectStructure(temp, folder); } foreach (FileInfo temp in dirInfo.GetFiles()) { SourceCodeSchema.ProjectFiles file = new ProjectFiles(); file.Name = temp.Name; file.Include = temp.FullName; if (parentFolder == null) this.ProjectFiles.Add(file); else parentFolder.Files.Add(file); } }