我为FaultException配置了服务,但在客户端我没有得到
中捕获的异常catch (FaultException<MyServiceFault> fe)
{
}
相反它始终被捕获
catch (FaultException fx)
{
}
我正在使用selfhost和channelfactory。
我的服务:
[FaultContract(typeof(MyServiceFault))]
public string HelloWorld()
{
int a=5;
try
{
var b = a/0;
}
catch(Exception e)
{
throw new FaultException<MyServiceFault>(new MyServiceFault(){Message ="Divide by zero"}, "Divide by Zero");
}
}
我在[DataContract]
上也有MyServiceFault
属性。
我想知道我是否错过任何配置。
答案 0 :(得分:1)
我在这里回答了类似的问题:Proper way to throw exception over WCF
尝试声明您的操作:
[FaultContractAttribute(
typeof(MyServiceFault),
Action = "",
Name = "MyServiceFault",
Namespace = "YourNamespace")]
public string HelloWorld()
希望它有所帮助。