我们在我们的ASP.NET网络应用程序中使用ELMAH,并且对于我们获得的一些例外情况,我感到难以置信。其中一些是:.NET异常:每种异常类型是否都有自己的消息文本?
- System.FormatException:Base-64字符数组的无效长度。
- System.Web.HttpException:无法验证数据。
- System.Security.Cryptography.CryptographicException:填充无效,无法删除。
我根本不知道它们为什么会出现,但最终用户显然没有看到它们,所以我想忽略它们并禁止发送电子邮件。如果我这样做,我想确保System.FormatException仅将Invalid length for a Base-64 char array.
用于其消息文本,而不是其他消息。如果确实如此并且我忽略了它,我可能会错过System.FormatException引发的其他异常。如果是这样的话,我必须检查消息文本。这不是问题,但我真的不喜欢在我的应用程序中使用硬编码字符串。
更新:
我试过这段代码:
try
{
throw new System.FormatException();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
Console.Read();
而且其消息文本:
One of the identified items was in an invalid format.
这告诉回答者是正确的,在某些例外情况应被忽略基于例外和消息文本。
为什么在地球上有人投票结束对此保持匿名? – oscilatingcretin 2012-04-05 14:43:28