C# 如何检查子目录';s

C# 如何检查子目录';s,c#,C#,Am使用M.Babcock代码根据文件名的“模式”获取文件列表,但下面的代码执行此任务,但它不在子目录中的文件中查找。还有关于如何在Sub-Dir中查找文件模式的帮助吗 我知道如果使用下面的代码将做的工作 DirectoryInfo[] DI = new DirectoryInfo(rootdir).GetDirectories("*.*", SearchOption.AllDirectories ) ; 但我不明白我如何才能改变他的代码来查看sub-dir中的文件 巴布科克代码 var ge

Am使用M.Babcock代码根据文件名的“模式”获取文件列表,但下面的代码执行此任务,但它不在子目录中的文件中查找。还有关于如何在Sub-Dir中查找文件模式的帮助吗

我知道如果使用下面的代码将做的工作

DirectoryInfo[] DI = new DirectoryInfo(rootdir).GetDirectories("*.*", SearchOption.AllDirectories ) ;
但我不明白我如何才能改变他的代码来查看sub-dir中的文件

巴布科克代码

var getfiles = new fileshare.Program();
string realname = "*main*";
string Location = "SVR01";
var fileList = getFiles.GetFileList(realname, Location);
var anymatch = fileList.Any();

if (anymatch) // Or possibly `if (fileList.Any())` if anymatch isn't 
              // really used anywhere else
    baseMeta();

foreach (var file in getfiles.GetFileList(realname,Location))
    getfiles.copytolocal(file.FullName);
 switch (Location)
    {
        case "SVR01":
            directory = @"\\SVR01\Dev";
        break;

        case "SVR02":
            directory = @"\\SVR02\Dev";
        break;

        case "SVR03":
            directory = @"\\SVR03\Prod");
        break;

        default: 
            throw new ArgumentOutOfRangeException();

    }

    DirectoryInfo di = null;
    try
    {
        di = new DirectoryInfo(directory);
    }
    catch(Exception ex)
    {
        Console.WriteLine(ex.Message);
        yield break;
    }

    foreach(var fi in di.EnumerateFiles(pattern))
        yield return fi;
}

提前感谢

您可以为正在使用的方法提供相同的SearchOption参数:

foreach(var fi in di.EnumerateFiles(pattern, SearchOption.AllDirectories))
    yield return fi;

谢谢,我一直在尝试或玩di=newdirectoryinfo(directory);,所以它不起作用。谢谢你的帮助