How to know if Array FileInfo[] contains a file
c#, fileinfo, ienumerable, linq
Solution
Remove `fileList.Contains(result)` and use:
if (result.Any())
{
}
`.Any()` is a LINQ keyword for determining whether result has any items in it or not. Kinda like doing a `.Count() > 0`, except quicker. With `.Any()`, as soon as an element is found the sequence is no longer enumerated, as the result is `True`.
In fact, you could remove the last five lines of your code from `from file in...` to the bottom, replacing it with:
if (fileList.Any(x => x.Name == "test.txt"))
{
}
Problem
I have the following code, I receive an error at "if statement" saying that FileInfo does not contain a definition "Contains" Which is the best solution for looking if a file is in a directory? Thanks ``` string filePath = @"C:\Users\"; DirectoryInfo folderRoot = new DirectoryInfo(filePath); FileInfo[] fileList = folderRoot.GetFiles(); IEnumerable<FileInfo> result = from file in fileList where file.Name == "test.txt" select file; if (fileList.Contains(result)) { //dosomething } ```