可能重复:
What’s the best way to handle the exceptions and how to deal with them in asp.net管理例外
我建一个网站的ASP.NET MVC。在内部函数中,我处理逻辑,针对数据库等内部我使用尝试捕获意外的异常。
因为我需要知道将消息返回给客户端的异常,所以我需要在调用内部函数的控制器中使用try catch。这对性能很重要吗?
在我的网站中处理异常的最佳方法是什么?
可能重复:
What’s the best way to handle the exceptions and how to deal with them in asp.net管理例外
我建一个网站的ASP.NET MVC。在内部函数中,我处理逻辑,针对数据库等内部我使用尝试捕获意外的异常。
因为我需要知道将消息返回给客户端的异常,所以我需要在调用内部函数的控制器中使用try catch。这对性能很重要吗?
在我的网站中处理异常的最佳方法是什么?
每次您尝试捕捉异常时都会产生相当大的成本。理想情况下,您只应该使用try-catch来实现真正的例外。如果您使用它来返回消息(作为正常工作流程的一部分),它会影响您的性能(这实际上是一种不好的做法)。
例子:
你需要的try-catch任何外部依赖:数据库连接, Web服务,WCF,......你也可以使用 clausule的做到这一点。
你不需要的try-catch东西,你可以用
逻辑控制。例如,一个用户名和密码字符串.Empty(您可以
验证输入数据,而不依赖try-catch)。
如果你不打算控制异常或采取行动,不要捕捉并让上层处理异常。采取行动的一个很好的例子就是最终环节中的免费资源,重新抛出捕捉异常。这会对性能产生影响,但它也会留下未发布的资源。
异常管理策略在一个大项目中很重要。在一个简单的应用程序中不能算是一件大事,但如果您要承受巨大的负载,您应该仔细考虑由谁负责处理异常。