代码之家  ›  专栏  ›  技术社区  ›  Eric Z Beard

web方法返回值的好设计模式是什么?

  •  9
  • Eric Z Beard  · 技术社区  · 16 年前

    在编码web服务时,如何构造返回值?您如何处理错误情况(预期的和意外的)?如果您返回一些简单的东西,比如int,您是只返回它,还是将它嵌入到更复杂的对象中?一个服务中的所有web方法都返回单个类的实例,还是为每个方法创建一个自定义返回值类?

    4 回复  |  直到 16 年前
        1
  •  8
  •   Ben Scheirman    16 年前

    类似AddCustomerRequest的东西,它将返回AddCustomerResponse。

    另一个好的模式是使这些都从一个简单的IMessage接口派生出来,在这个接口中,您的通用端点类似于Process(params-IMessage[]messages)。。。这样,您可以在同一个web请求中传递多个操作。

        2
  •  1
  •   joel.neely    16 年前

    +本的答案是1。

    此外,我建议考虑通用响应允许多个错误/警告项,以使响应尽可能全面和可操作。(您是希望使用在第一条错误消息后停止的编译器,还是希望使用尽可能多的编译器?)

        3
  •  1
  •   Vineet Jain    7 年前

    如果您使用的是SOAP web服务,那么 SOAP faults 是返回错误详细信息的标准方法,其中故障消息可以返回您喜欢的任何其他详细信息。

        4
  •  0
  •   Sixto Saez    16 年前

    Soap错误是一种标准实践,其中调用应用程序是Soap客户端。有些情况下,例如使用XMLHTTP的COM客户机,Soap被解析为XML,Soap错误无法轻松处理。现在还不能投票,但要为@Ben Scheirman再投一个+1。