728x90
반응형
728x170
▶ Program.cs
using System;
using System.Diagnostics;
using System.Reflection;
namespace TestProject
{
/// <summary>
/// 프로그램
/// </summary>
class Program
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Static
//////////////////////////////////////////////////////////////////////////////// Private
#region 실행하기 - Execute(count)
/// <summary>
/// 실행하기
/// </summary>
/// <param name="count">카운트</param>
private static void Execute(int count)
{
if(count > 0)
{
Execute(count - 1);
}
else
{
throw new Exception();
}
}
#endregion
#region 예외 호출 스택 출력하기 - PrintExceptionCallStack(exception)
/// <summary>
/// 예외 호출 스택 출력하기
/// </summary>
/// <param name="exception">예외</param>
private static void PrintExceptionCallStack(Exception exception)
{
StackTrace stackTrace = new StackTrace(exception, true);
StackFrame[] stackFrameArray = stackTrace.GetFrames();
foreach (StackFrame stackFrame in stackFrameArray)
{
MethodBase methodBase = stackFrame.GetMethod();
Console.WriteLine($"{methodBase.ReflectedType.FullName}.{methodBase.Name} line {stackFrame.GetFileLineNumber()}");
}
}
#endregion
#region 프로그램 시작하기 - Main()
/// <summary>
/// 프로그램 시작하기
/// </summary>
private static void Main()
{
try
{
Execute(5);
}
catch(Exception exception)
{
PrintExceptionCallStack(exception);
}
}
#endregion
}
}
728x90
반응형
그리드형(광고전용)
'C# > Common' 카테고리의 다른 글
[C#/COMMON] Ping 클래스 : Send 메소드 사용시 타임아웃 설정하기 (0) | 2021.08.26 |
---|---|
[C#/COMMON] GAC 유틸리티를 사용해 전역 어셈블리 캐시에서 어셈블리 제거하기 (0) | 2021.08.26 |
[C#/COMMON] GAC 유틸리티를 사용해 어셈블리를 전역 어셈블리 캐시에 추가하기 (0) | 2021.08.26 |
[C#/COMMON] Process 클래스 : WaitForExit 메소드를 사용해 실행 프로세스 일시적으로 대기하기 (0) | 2021.08.26 |
[C#/COMMON] Process 클래스 : WaitForExit 메소드를 사용해 실행 프로세스 종료시까지 대기하기 (0) | 2021.08.26 |
[C#/COMMON] StackFrame 클래스 : 현재 메소드의 호출자 구하기 (0) | 2021.08.26 |
[C#/COMMON] StackFrame 클래스 : 현재 스택 추적 구하기 (0) | 2021.08.26 |
[C#/COMMON] BitArray 클래스 : Xor 메소드를 사용해 배타적 OR 연산하기 (0) | 2021.08.26 |
[C#/COMMON] BitArray 클래스 : Or 메소드를 사용해 OR 연산하기 (0) | 2021.08.26 |
[C#/COMMON] BitArray 클래스 : And 메소드를 사용해 AND 연산하기 (0) | 2021.08.26 |
댓글을 달아 주세요