【问题标题】:Strategy for error handling in Web ServicesWeb 服务中的错误处理策略
【发布时间】:2011-04-24 18:46:45
【问题描述】:

我们正在开发一个网络应用程序。这个 Web 应用程序的所有页面都继承自一个基本页面,我们有一个类似

的机制
 this.Error += new EventHandler( Page_Error );

 private void Page_Error( object sender, EventArgs e )
    {
        Helper.LogError( this.Context );
    }

以上在所有网页上都可以正常工作。

现在我们想在我们的应用程序中添加几个 Web 服务。我们还有一个基础服务,所有其他服务都将从该基础服务继承。但是,到目前为止,我无法在 web 服务中设置正确的错误登录机制。因为,如果不将 Try Catch 放在相应的服务方法调用中,我无法识别任何可以获取错误信息的事件。

在这种情况下,有人可以建议一种策略,为 Web 服务提供一个通用的通用错误处理机制。

【问题讨论】:

  • 看看 ASP.NET 健康监控。效果很好,但学习曲线很困难(不难,只是有点奇怪)。

标签: .net web-services architecture


【解决方案1】:

假设 .net Web 服务是指 WCF,那么您可以按照 here 的说明使用 FaultContracts 等。

还有另一种处理方式,它适用于 WCF 和 asmx Web 服务:

  • 让所有数据传输对象都继承自“错误信息”对象
  • 在每个服务中,尝试一下捕获
  • 在 catch 中,使用相关数据填充错误信息

【讨论】:

  • 对不起,我的问题并不清楚,但我实际上是指传统的 Web 服务 (.asmx)
猜你喜欢
  • 2011-02-28
  • 1970-01-01
  • 1970-01-01
  • 2011-05-12
  • 1970-01-01
  • 1970-01-01
  • 2014-12-19
  • 2010-12-07
  • 1970-01-01
相关资源
最近更新 更多