示例#1
0
        static void Main(string[] args)
        {
            try
            {
                var c2 = new C2();
                c2.ThrowOriginalException();
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Original StackTrace {ex.StackTrace}\n");
                if (ex.InnerException != null)
                {
                    Console.WriteLine($"InnerException StackTrace {ex.InnerException.StackTrace}");
                }
            }

            Console.WriteLine();
            Console.WriteLine();

            try
            {
                var c2 = new C2();
                c2.MessWithStackTrace();
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Original StackTrace {ex.StackTrace}\n");
                if (ex.InnerException != null)
                {
                    Console.WriteLine($"InnerException StackTrace {ex.InnerException.StackTrace}");
                }
            }

            Console.WriteLine();
            Console.WriteLine();

            try
            {
                var c2 = new C2();
                c2.RightWayToAddInfoToNewException();
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Original StackTrace {ex.StackTrace}\n");
                if (ex.InnerException != null)
                {
                    Console.WriteLine($"InnerException StackTrace {ex.InnerException.StackTrace}");
                }
            }

            Console.WriteLine();
            Console.WriteLine();

            try
            {
                var c2 = new C2();
                c2.WrongWayToAddInfoToNewException();
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Original StackTrace {ex.StackTrace}\n");
                if (ex.InnerException != null)
                {
                    Console.WriteLine($"InnerException StackTrace {ex.InnerException.StackTrace}");
                }
            }
        }