【发布时间】:2013-10-09 02:51:33
【问题描述】:
我正在使用由 jQuery / ajax 以 JSON 格式调用的 ASP.NET WebMethods。
我必须通过为用户提供更多信息来改进异常处理。
我捕获了原始异常并抛出了一个“UserFriendlyException”,其中只设置了“标题”和“描述”。
我只得到一个非常基本的 JSON 字符串 {"Message":"处理请求时出错。","StackTrace":"","ExceptionType":""}
我一直在寻找一些解决方案,并找到了如下页面: http://encosia.com/use-jquery-to-catch-and-display-aspnet-ajax-service-errors/ 或 https://stackoverflow.com/a/891442/1099519
您可以在哪里访问消息,这很好,但我仍然想访问多个属性。我看到的大多数文章通常都建议将 statusCode 用于“ID”而不是更少。
我想到了一个不同的方法:可能有一种方法可以以某种方式覆盖异常的呈现(就像在 WCF 中可以修改完整的消息一样),所以在这种情况下,我可以以某种方式捕获我的 UserException 并呈现我自己的 JSON 字符串?
有什么想法吗?
感谢您的帮助, 多米尼克
【问题讨论】:
-
你能澄清一下“但我仍然想访问多个属性”的意思吗? - 如果您正在捕获异常并将它们作为用户定义的异常类型重新抛出,则您已经可以完全控制该自定义异常的属性...
标签: jquery asp.net json exception webmethod