C#布尔文件名

C#布尔文件名,c#,foreach,boolean,C#,Foreach,Boolean,我有以下代码: bool containsNonAllowedCLEOFiles = directory.EnumerateFiles().Any(file => !allowedCLEOFiles.Contains(file.Name)); if (containsNonAllowedCLEOFiles == true) { //How can I print file names with foreach? For example foreach () {

我有以下代码:

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?
    }
}
它必须打印“CONTAINSNOLLOWEDCLEOFILES”文件名


非常感谢

您不需要循环

您必须使用
Where()
,它才能过滤文件:

var NonAllowedCLEOFiles = directory.EnumerateFiles()
                                   .Where(file => !allowedCLEOFiles.Contains(file.Name));
然后检查找到的任何记录是否显示以逗号分隔的文件名:

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

您不需要循环

您必须使用
Where()
,它才能过滤文件:

var NonAllowedCLEOFiles = directory.EnumerateFiles()
                                   .Where(file => !allowedCLEOFiles.Contains(file.Name));
然后检查找到的任何记录是否显示以逗号分隔的文件名:

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