示例#1
0
        public IEnumerable <FileSystemNode> Search(FileSearch search)
        {
            var result = Enumerable.Empty <FileSystemNode>();

            if (!search.Kind.HasValue || search.Kind.Value == FileSystemNodeKind.Directory)
            {
                result = search.Location.EnumerateDirectories(search.Term, search.SearchOption)
                         .Select(d => d.ToFilesystemNode(search.Location.FullName));
            }

            if (!search.Kind.HasValue || search.Kind.Value == FileSystemNodeKind.File)
            {
                result = result.Concat(
                    search.Location.EnumerateFiles(search.Term, search.SearchOption)
                    .Select(f => f.ToFilesystemNode(_mimeMapService.GetMimeFromExtension((f.Extension ?? string.Empty).TrimStart('.'))))
                    );
            }

            return(result);
        }
 public IEnumerable <FileSystemNode> ListFiles(string path)
 => new DirectoryInfo(path).EnumerateFiles()
 .Select(f => f.ToFilesystemNode(_mimeMapService.GetMimeFromExtension((f.Extension ?? string.Empty).TrimStart('.'))));