C# 布尔文件名

C# bool file name

我有这个代码:

bool containsNonAllowedCLEOFiles = directory.EnumerateFiles().Any(file => !allowedCLEOFiles.Contains(file.Name));

if (containsNonAllowedCLEOFiles == true)
{
    //How can I print file names with foreach? For example
    foreach ()
    {
        MessageBox.Show(String.Join(", ", unAllowedCLEOFiles))); //Print after comma unallowed files, but how to?
    }
}

它必须打印 "containsNonAllowedCLEOFiles" 文件名。

非常感谢

您不需要循环。

你必须使用 Where() 来过滤文件:

var NonAllowedCLEOFiles = directory.EnumerateFiles()
                                   .Where(file => !allowedCLEOFiles.Contains(file.Name));

然后检查找到的任何记录是否显示以逗号分隔的文件名:

if(NonAllowedCLEOFiles.Any())
    MessageBox.Show(String.Join(", ", NonAllowedCLEOFiles.Select(x=>x.Name)));