没有陷入c#

时间:2018-05-15 04:50:38

标签: c#

我有以下代码,我的代码没有捕获异常。

在我的代码中,我试图读取所有授予访问权限的文件。

    var pathsToSearch = new Queue<string>();
    var foundFiles = new List<string>();

    pathsToSearch.Enqueue(startFolder);

    while (pathsToSearch.Count > 0) {
        var dir = pathsToSearch.Dequeue();

        try {
            var files = Directory.GetFiles(dir);
            foreach (var file in Directory.GetFiles(dir)) {
                foundFiles.Add(file);
            }

            foreach (var subDir in Directory.GetDirectories(dir)) {
                pathsToSearch.Enqueue(subDir);
            }

        }
        catch (UnauthorizedAccessException e)
        {
            Console.WriteLine(e);
        }
    }

为什么try catch无法正常工作或我的代码中有错误?

1 个答案:

答案 0 :(得分:1)

听起来您正在从Visual Studio运行程序,Visual Studio默认捕获First Chance Exceptions。您可以在Visual Studio中关闭此选项。我相信这是在Debug&gt;例外,但您也可以从显示异常的弹出对话框中禁用它。

这是一篇可能有用的微软文章:Understanding Exceptions while debugging with Visual Studio