【发布时间】:2012-02-16 11:16:15
【问题描述】:
如果我将以下行添加到 ASP.NET MVC 操作方法
throw new Exception("outer", new SecurityException("inner"));
在黄屏死机上实际显示的错误是内部SecurityException,完全没有提及外部异常。
安全异常
描述:应用程序试图执行的操作不是 安全策略允许的。授予此申请 所需权限请联系您的系统管理员或更改 配置文件中应用程序的信任级别。
异常详细信息:System.Security.SecurityException:内部
来源错误:
在执行过程中产生了一个未处理的异常 当前的网络请求。有关原产地和位置的信息 可以使用下面的异常堆栈跟踪来识别异常。
堆栈跟踪:
[安全异常:内部]
这是预期的行为吗?
外部异常是什么类型似乎并不重要。即使是另一个 SecurityException,也永远不会显示该消息。默认的 SecurityException 错误消息非常模糊,我想抓住它并添加一些更具体的信息。如果我不将原始 SecurityException 作为 innerException 包含在内,这可以正常工作,但理想情况下我想这样做。
【问题讨论】:
-
我发现这适用于任何内部异常,而不仅仅是安全异常。
标签: asp.net asp.net-mvc exception-handling code-access-security