我对try catch和异常处理都很陌生。我希望我的程序在找不到目录或文件时捕获异常。 每当我运行程序时,我都会收到错误" DirectoryNotFoundException未被用户代码处理 - 类型' System.IO.DirectoryNotFoundException'发生在something.dll中但未在用户代码中处理"
我可以看到Visual Studio在DirectoryNotFoundDirection上打破了什么想法?
try {
LiveDownloadOperation operation = await connectClient.CreateBackgroundDownloadAsync(filePath);
var result = await operation.StartAsync();
}
catch (FileNotFoundException filEx) {
Debug.WriteLine(filEx.Message);
throw filEx;
}
catch (DirectoryNotFoundException dirEx) {
Debug.WriteLine(dirEx.Message);
throw;
}
catch (IOException ioEx) {
Debug.WriteLine(ioEx.Message);
throw ioEx;
}
catch (Exception ex) {
Debug.WriteLine(ex.Message);
throw;
}
编辑:在try
中显示代码答案 0 :(得分:2)
因为该目录不存在(或具有权限问题等),所以它会抛出DirectoryNotFoundException。
你处理,然后重新加载 - 因为,调试器正确地说没有处理异常。