Это:
try
{
action();
}
catch (Exception exc)
{
Debug.WriteLine(exc.StackTrace);
}
улавливает ваше исключение внутри Try
и не распространяется вверх, чтобы развернуть столбец, он просто проглатывает исключение. Поэтому вы не видите Main
как часть вашего stacktrace. Если вы хотите увидеть Main
, оставьте catch
вашим методом Main
:
public static void Main(string[] args)
{
try
{
Try(Fail);
}
catch (Exception e)
{
}
}
И теперь вы видите:
в ConsoleApplication2.Program .Fail () в C: \ Users \ Yuval \ documents \ visual studio 14 \ Projects \ ConsoleApplication2 \ ConsoleApplication2 \ Program.cs: строка 25 в ConsoleApplication2.Program.Try (действие) в C: \ Users \ Yuval \ documents \ visual studio 14 \ Projects \ ConsoleApplication2 \ ConsoleApplication2 \ Program.cs: строка 30 в ConsoleApplication2.Program.Main (String [] args) в C: \ Users \ Yuval \ documents \ visual studio 14 \ Projects \ ConsoleApplication2 \ ConsoleApplication2 \ Program. cs: строка 15
blockquote>