FindInFiles, C# static function

/ Published in: C#
Save to your folder(s)

This function provides C# with functionality similar to the apparently deprecated my.Computer.FileSystem.FindInFiles under the Microsoft.VisualBasic namespace.

Example usage:
IEnumerable oemFiles = FindInFiles(

There are two implementations in Source: [1] foreach and [2] LINQ-uified. The foreach version has nested foreach loops: one for the fileWildcards and one to search the contents of the files. There's an if statement that prevents duplicates. The LINQ-uified version is also nested - it has nested from clauses.

The LINQ-uified version is definitely more concise. It's harder to debug - can't really be stepped-through. This seems to be the classic trade-off between the imperative foreach approach and the functional LINQ approach.

Source also contains LinqPad syntax. LinqPad can be downloaded at It'll translate from LINQ to Lambda but I think Lambda is harder to read.

Report this snippet


RSS Icon Subscribe to comments

You need to login to post a comment.