[ServiceContract]
public interface IService1
{
[OperationContract]
[FaultContract(typeof(DivisorFaultException))]
int GetDiv(int a, int b);
}
[DataContract]
public class DivisorFaultException
{
[DataMember]
public string errorMessage;
}
public class Service1 : IService1
{
public int GetDiv(int a, int b)
{
try
{
// int result = a / b;
return a/b;
}
catch (DivideByZeroException e)
{
DivisorFaultException dfEx = new DivisorFaultException();
dfEx.errorMessage = "A number cannot be divided by zero.";
throw new FaultException(dfEx);
}
}
}
class Program
{
static void Main(string[] args)
{
ServiceHost hostObj = new ServiceHost(typeof(Service1));
BasicHttpBinding bindObj = new BasicHttpBinding();
hostObj.AddServiceEndpoint(typeof(IService1), bindObj, "http://localhost:8000/Mywcf");
hostObj.Open();
Console.WriteLine("Service Ready...Press [Enter] to Stop...");
Console.ReadLine();
hostObj.Close();
}
}
![图片说明](https://img-ask.csdn.net/upload/201506/16/1434457921_485439.png)