public JsonResult GetFiles(string name, string type) { using (var activity = new RFMirrorActivity(Context, Username)) { IEnumerable <string> sites = null; switch (type) { case "all": break; case "source": sites = activity.GetSitesForSource(name); break; default: sites = new List <string> { name }; break; } return(Json(new { files = activity.GetFiles(sites).OrderByDescending(d => d.ReceivedTime).Take(50).AsEnumerable().Select(f => new { f.FileName, f.FileSize, f.IsExtracted, f.Message, f.MirroredFileID, f.MirrorPath, f.ModifiedTime, f.NamedFileKey, f.NumRows, f.Processed, f.ReceivedTime, f.SourcePath, f.SourceSite, ValueDate = f.ValueDate.HasValue ? new RFDate(f.ValueDate.Value).ToJavascript() : null }) })); } }