我正在使用传统的ASP.NET应用程序进行WCF服务调用。如何处理ASP.NET中的WCF异常
我应该围绕WCF调用尝试一下,并在当前页面的顶部显示错误详细信息;让错误将用户重定向到自定义错误页面;或者把它留在IIS/.NET框架?
哪种方法最不可能混淆未来的开发者?
我正在使用传统的ASP.NET应用程序进行WCF服务调用。如何处理ASP.NET中的WCF异常
我应该围绕WCF调用尝试一下,并在当前页面的顶部显示错误详细信息;让错误将用户重定向到自定义错误页面;或者把它留在IIS/.NET框架?
哪种方法最不可能混淆未来的开发者?
从来没有到死亡的黄色屏幕。有关错误的详细信息可能会提示黑客破坏您的网站。
如果在没有服务请求的情况下无法显示页面,则重定向到自定义错误页面。
如果页面上只有一小部分信息会丢失,而该页面不是其功能的关键,那么最好向用户显示一条友好的消息,指出此时此特定信息不可用。
如果您希望WCF调用可以引发异常,并知道可以获取哪些异常类型,那么是的,您应该捕获异常并执行相应的操作。通常最好告诉用户一个错误使操作失败,并记录异常的详细信息以供您或技术支持人员进一步检查。
这将取决于您的应用程序要求。如果Web服务调用失败,您可以继续处理吗?如果不是,你可能应该记录异常并将用户重定向到500页。我会在global.asax中使用Application_Error
方法来执行此操作。如果你可以继续处理,那么你应该在你的Web服务调用中放一个try/catch,并处理相应的FaultException。您绝对不应该让客户看到生产中的黄色屏幕。