现在,当我的webservice发现一个错误,例如无法连接到远程数据库或找不到你要查找的记录时,我定义了一个特殊的返回值。
例如:
我的webservice返回距离为整数,i返回某些错误的负值。 (-100,-200等)
但是,如果我的网络服务返回数据集"员工"然后我返回一个数据集"错误" with(ErrorID,Description)
第一个例子对我来说更自然,但第二个例子是因为我更改了数据集名称,我感到更加担心。
主要的是我总是制作一份正确的文件,以便网络服务消费者知道如何处理特殊的返回值。
所以我正在寻找最佳实践。
答案 0 :(得分:1)
您可以返回一个包含数据(有效负载)和错误字符串(最好是本地化)或整数的简单包装类。让客户端JavaScript检查Error
属性是否为非null或大于0,并在这种情况下采取适当的操作,因为它表示错误。否则,正常处理Data
属性中的有效负载。
C#中的一个例子:
public class WebMethodReturn<T>
{
public T Data { get; set; }
public string Error { get; set; }
}