最近在工作中,使用到自訂的例外處理
在這邊做個整理與紀錄
節錄 MSDN官網 說明
Exception(),使用預設值初始化新例外狀況物件的屬性。
Exception(String),它會使用指定的錯誤訊息初始化新的例外狀況物件。
Exception(String, Exception),它會使用指定的錯誤訊息和內部例外狀況,初始化新的例外狀況物件。
最近學到,在自訂的 Exception 中,一定要 override 這三個建構函式
public class XinyiException : Exception
{
public XinyiException()
{
}
public XinyiException(string? message) : base(message)
{
}
public XinyiException(string? message, Exception? innerException) : base(message, innerException)
{
}
}
預設的 ToString 方法會將 Exception Message 和 Stack Trace 都印出來
如果真的需要客製化,必須 overrider ToString 的話,
記得要加上 base.ToString
public override string ToString()
{
return $"Something you want to print... {base.ToString()}";
}