从函数返回错误消息的最佳方法是什么?

Rae*_*leh 6 .net c#

如果遇到逻辑错误错误(Expired user, invalid ID),那么从以下方面告诉父方法此错误的最佳方法是什么:

1-抛出自定义异常,如下所示:

 try
{
//if (ID doesn't match) then 
Throw new CustomException(-1,"ID doesn't match");
}
catch(CustomException ex)
{
throw ex
}
catch(Exception ex)
{
throw new CustomException(ex.ErrorCode,ex.message);
}
Run Code Online (Sandbox Code Playgroud)

2-返回错误消息和代码如:

//if (ID doesn't match) then 
This.ErrorCode= -1;
This.Message= "ID doesn't match";
Run Code Online (Sandbox Code Playgroud)

Den*_*nko 5

更好的方法是抛出自定义异常。这就是他们被介绍的原因。如果您需要提供特定信息(例如ErrorCode其他信息),您可以轻松扩展基Exception类来执行此操作。主要原因有:

  • 您可以忽略从函数返回的无效错误代码,这可能会导致您的系统状态已损坏,而这Exception是您无法忽略的情况。
  • 如果您的函数做了一些可用的事情,那么它应该返回一些您感兴趣的数据,而不是错误代码,这为您提供了更可靠的设计。