В настоящее время, нет. Ну, на самом деле можно нажать поврежденный узел проекта, и в свойствах область ищут свойство 'Path', тогда нажимают маленький значок обзора и выбирают новый путь.
Вуаля:)
Почему вы ожидаете, что он не будет выполняться?
Если у вас есть блок try / catch / finally или try / finally, блок finally выполняется независимо от того, какой код у вас может быть в блоке try или catch большую часть времени .
Вместо goto рассмотрите return.
//imagine this try/catch/finally block is inside a function with return type of bool.
try
{
throw new Exception();
}
catch (Exception)
{
return false; //Let's say you put a return here, finally block still executes.
}
finally
{
Console.WriteLine("I am in finally!");
}
Появляется следующий текст из Спецификации языка C # ( 8.9.3 Оператор goto )
Оператор goto выполняется следующим образом:
Суть представленных ответов - что когда элемент управления покидает защищенную область любым способом, будь то «return», «goto», «break», «continue» или «throw», "finally" выполняется - правильно. Однако отмечу, что почти в каждом ответе говорится что-то вроде «блок finally всегда выполняется». Блок finally НЕ всегда выполняется. Есть много ситуаций, в которых блок finally не запускается.
Кто хочет попытаться перечислить их все?
Кажется разумным. Блок finally
всегда запускается либо после try
, либо после catch
.
Аналогичным образом
try
{
// do something
return;
}
finally
{
// do something else
}
всегда будет запускать finally
блок. ИЗМЕНИТЬ - но см. Комментарии Эрика выше.
Это задумано. В обработчике исключений вы можете выполнить некоторые действия, связанные с исключением. В блоке finally вы должны выполнить очистку ресурсов - поэтому блок finally всегда выполняется независимо от кода обработки исключений.
Как уже упоминалось, , наконец,
выполняется независимо от выполнения программы. Конечно, блок finally
необязателен, поэтому, если он вам не нужен, не используйте его.
Поскольку ожидается, что оператор finally
будет выполняться после выхода из try
(или catch
при обнаружении исключения). В том числе и при вызове goto.
В этом и заключается смысл блока finally
. Он всегда выполняется (практически всегда).