【问题标题】:Handling multiple validation errors returned from a web service处理从 Web 服务返回的多个验证错误
【发布时间】:2014-03-15 02:39:44
【问题描述】:

我有一个通过 Web 服务保存对象的存储库。存储库使用客户端将对象作为 JSON 包发送到 Web 服务。如果验证失败,Web 服务将返回带有验证错误列表的 JSON。我试图想出将这些错误返回给原始调用者的最佳方法,在该调用者中将以某种方式处理错误。我打算简单地抛出一个异常,迫使调用者处理错误,但我不知道将错误列表附加到异常的方法。我可以创建一个自定义异常,但这似乎有点 hacky。我的替代方法是简单地返回错误列表,但这似乎也不理想。

此存储库的调用者将是批处理,因此不会有任何类型的实时用户来纠正任何错误。

【问题讨论】:

  • 那么,您需要存储库来返回从 Web 服务返回的错误列表吗?
  • 是的,我想通过异常来执行此操作,而不仅仅是返回可以忽略的错误列表。还是简单地返回错误列表似乎是最好的选择?
  • 也可以忽略异常。您希望客户端如何处理错误消息?事实上,您期望客户如何关于错误消息?
  • 我希望存储库/客户端对调用者说:“嘿,您的对象没有保存,原因如下:...”。
  • 当然。但是您希望调用者对错误消息做什么?将它们写入批处理日志?如果是这种情况,那么您只需要一条格式化的错误消息。可能很长,但您只需要一个文本字符串。

标签: .net json web-services


【解决方案1】:

通常在这种情况下,我会首先尝试将可能出现的异常放入框架异常中,这样才有意义,和/或然后我将为任何其他异常创建自定义异常。您可以提供自己的自定义消息。

【讨论】:

  • 我在客户端使用网络服务。
  • 对,但是如果您有一个列表,例如,Web 服务发回的 10 条错误消息,您希望提供例外情况?
  • 如何在存储库中维护日志,然后简单地将调用者发回对日志文件或 uri 的引用。
猜你喜欢
  • 2021-07-01
  • 1970-01-01
  • 2011-05-12
  • 2023-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-26
  • 2011-05-05
相关资源
最近更新 更多