private static void ShowFilesWithLink(string path) { var movies = new List <Movie> { new Movie { Name = "Jason Bourne", Year = 2016, Ratings = 50.00m }, new Movie { Name = "The Bourne Identity", Year = 2002, Ratings = 90m }, new Movie { Name = "The Bourne Supremacy", Year = 2004, Ratings = 90m }, new Movie { Name = "The Bourne Ultimatum", Year = 2007, Ratings = 80m } }; Func <Movie, bool> function = x => x.Year > 2005; var moviequery = movies.Filter(function); foreach (var item in moviequery) { Console.WriteLine($"name - {item.Name}"); } var query = new DirectoryInfo(path).GetFiles().OrderByDescending(x => x.Length).Take(5); var list = new DirectoryInfo(path).GetFiles(); var fileInfos = list.AsEnumerable().GetEnumerator(); while (fileInfos.MoveNext()) { Console.WriteLine($"{fileInfos.Current.Name}-{fileInfos.Current.Length}-count{list.Counts()}"); } }
public void Export(string rootPath) { var entries = Directory.GetFileSystemEntries(rootPath, "*", SearchOption.AllDirectories); var d = new DirectoryInfo(rootPath).EnumerateFileSystemInfos("*", SearchOption.AllDirectories); var logicalEntries = d.AsEnumerable().ToArray(); //var entriesJson = toJson(entries); //var logicalEntries = entries.Select(s => s.Replace(rootPath + "\\", string.Empty)).ToList<string>(); try { var jsonString = JsonHelper.ToJson(logicalEntries); base.SaveFileAs(jsonString); //var dataObject = JsonHelper.FromJson<List<string>>(jsonString); } catch (Exception) { throw; } }
// Ensures that the higher directories iterate first before lower directories public static IEnumerable <DirectoryInfo> EnumerateDirectories(this DirectoryInfo dir, bool includeSelf, bool recursive) { if (!dir.Exists) { return(EnumerableExt <DirectoryInfo> .Empty); } var ret = dir.EnumerateDirectories(); if (recursive) { ret = ret .Concat(dir.EnumerateDirectories() .SelectMany(d => d.EnumerateDirectories(includeSelf: false, recursive: true))); } if (includeSelf) { ret = dir.AsEnumerable().Concat(ret); } return(ret); }