files.OrderByDescending(file => file.FileDate);
works only for file.FileDate if this date is a DateTime type, are you displaying FileDate column in your screehshot? files.OrderByDescending(d => d.Year).ThenByDescending(d => d.Month).ThenByDescending(d => d.Day);
DirectoryInfo loanDir = new DirectoryInfo(@"c:\inetpub\wwwroot\aaa\DocStorage");
FileInfo[] filesInDir = loanDir.GetFiles("*" + partialName + "*.*");
List<FileDetail> files = new List<FileDetail>();
foreach (FileInfo foundFile in filesInDir)
{
files.Add(new FileDetail(foundFile));
}
GridView1.DataSource = files;
GridView1.DataSource = files.OrderByDescending(file => file.FileDate);
GridView1.DataBind();
class FileDetail
{
public String FileName { get; set; }
public String FileFullName { get; set; }
public String FileDate { get; set; }
public FileDetail(FileInfo foundFile)
{
this.FileFullName = foundFile.FullName;
this.FileName = foundFile.Name;
this.FileDate = foundFile.CreationTime.ToString();
}
}
Date sorting is working by the way