有关在WCF WebMethods中返回成功消息的一般建议

时间:2012-12-18 09:28:58

标签: wcf

我只是想找一些关于这个的一般建议。我的WCF WebMethod需要使用不同的软件跨应用程序工作,例如ASP.NET - >例如,Java。

我知道如果方法失败,我可以利用FaultException(Of MyError)生成SOAP错误,但是,通常发送成功消息的最佳方式是什么?< / p>

以下面的接口为例,该接口定义了将用户保存到数据库的功能:

<ServiceContract()>
Public Interface IService1

    <OperationContract()>
    Sub SaveUserIntoDataBase(ByVal u As MyAppUser)

End Interface

<DataContract()>
Public Class MyAppUser

    <DataMember()>
    Public Property FirstName() As String

    <DataMember()>
    Public Property Surname() As String

End Class

如果我需要发送用户成功保存的反馈,通常会怎么做?是否存在等于FaultException的“成功”,或者建议仅返回布尔值还是字符串?

我想应该总是返回一个值?

2 个答案:

答案 0 :(得分:2)

如果服务调用的执行没有失败,则没有任何等效的成功结果。

一种选择是创建一些自定义类型,例如枚举,并根据基础源的不同结果返回这些类型。

每个呼叫的返回类型可能不同或根据用户需求进行定制。在您的情况下,返回布尔值优于某些字符串值。你也使用“Sub”,所以如果它是一个函数,那么这可能是一种情况。

您也可以在此处进行一些讨论: Whats the best practice for returning a Boolean and string value

答案 1 :(得分:1)

无需成功消息。如果操作没有失败,那就是成功了。

使用FaultException指示失败。