Rik*_*ika 4 c# exception-handling exception
有没有办法可以得到相应的错误代码Exceptions?我需要抛出异常错误代码而不是它的消息,以便我根据错误代码向用户显示正确的消息.
如果您正在寻找win32错误代码,那么该Win32Exception课程就可以使用
catch (Win32Exception e)
{
Console.WriteLine("ErrorCode: {0}", e.ErrorCode);
}
Run Code Online (Sandbox Code Playgroud)
对于普通的旧CLR异常,没有整数错误代码.
鉴于您描述的问题,我将使用millimoose的解决方案来获取每种类型的异常的资源字符串.
异常的全部意义在于它们提供的信息比错误代码更丰富.默认情况下,它们没有,并且实际上并不需要.如果您喜欢使用错误代码,您可以使用自己的异常基类,从中派生所有例外:
public abstract class MyExceptionBase : Exception
{
public int ErrorCode { get; set; }
// ...
}
Run Code Online (Sandbox Code Playgroud)
那就是说,我不会打扰.我个人使用他们的类型名称将异常映射到错误消息:
ResourceManager errorMessages = ...;
errorMessages.GetString(ex.GetType().FullName);
Run Code Online (Sandbox Code Playgroud)
(您还可以创建更灵活的方案,例如使资源格式化字符串并将异常属性插入其中.)
| 归档时间: |
|
| 查看次数: |
22411 次 |
| 最近记录: |