protected void BuildFolderList()
{
List<FileData> lstFolders = new List<FileData>();
string sRoot = HttpContext.Current.Server.MapPath("~/");
string[] subdirs;
try {
subdirs = Directory.GetDirectories(sRoot);
} catch {
subdirs = null;
}
if (subdirs != null) {
foreach (string theDir in subdirs) {
string w = FileDataHelper.MakeWebFolderPath(theDir);
lstFolders.Add(new FileData { FileName = w, FolderPath = w, FileDate = DateTime.Now });
}
}
lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith(SiteData.AdminFolderPath));
lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/app_code/"));
lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/app_data/"));
lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/app_start/"));
lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/aspnet_client/"));
lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/bin/"));
lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/obj/"));
lstFolders.RemoveAll(f => f.FileName.ToLowerInvariant().StartsWith("/views/"));
this.DownloadFolders = lstFolders.OrderBy(f => f.FileName).ToList();
}