private List<FileInfo> getAllFiles(String[] folders, SortOrder order)
{
var retVal = new List<FileInfo>();
foreach (var folder in folders)
{
var fileList = getAllFiles(folder, order);
if (fileList.Any())
{
retVal.AddRange(fileList);
}
}
switch (order)
{
case SortOrder.DateDescending:
retVal = retVal.OrderByDescending(f => f.LastWriteTime).ToList();
break;
case SortOrder.DateAscending:
retVal = retVal.OrderBy(f => f.LastWriteTime).ToList();
break;
case SortOrder.AtoZ:
retVal = retVal.OrderBy(f => f.Name).ToList();
break;
case SortOrder.ZtoA:
retVal = retVal.OrderByDescending(f => f.Name).ToList();
break;
}
return retVal;
}