如何显示错误代码示例wcf服务?

时间:2012-03-29 06:59:15

标签: wcf

我需要将错误写为:

错误代码:

101: Syntax Error 
102: id already exists 
103: User already exists 
104: Unsupported id
105: Server Error, try again or contact administrator

请告诉我样品休息wcf服务... 我是新手写的wcf服务。

2 个答案:

答案 0 :(得分:1)

使用整数属性(ID)和String属性(描述)

构建一个类(为简单起见,称之为YourErrorClass)

使用DataContract

装饰它

然后在您的Web服务本身中,抛出一个FaultException,其中包含适当发布的值。

执行此操作时,请确保捕获它们的位置,并相应地向用户显示值。

答案 1 :(得分:1)

IServce1.cs

[ServiceConstract]
public interface IService1
{
  [OperationContract]
  string GetErrorCode(int er);
}

Service1.svc.cs

public class Service1:IService1
{
  public string GetErrorCode(int er)
  {
     string description;
     switch(er)
     {
        case 101: description="Syntax Error"; break;
        case 102: description="ID already exists"; break;
        case 103: description="User already exists"; break;
        case 104: description="Unsupported ID"; break;
        case 105: description="Server Error, try again or contact administrator"; break;
        default: //Write whatever you want to throw to user.
      }
     return description;
  } 
}

在客户端应用程序中使用此方法,使用其他方法,只要您认为错误将在try / catch块中发生,但在此之前创建自己的自定义异常并将每个代码与其关联,或者您也可以将它们存储在数据库中表然后使用ID可以从那里抛出相应的错误。