我有一个自定义异常,当客户端是控制台应用程序或表单应用程序时,这可以正常工作,但如果客户端WPF
不起作用。看,但我仍然找不到答案,任何想法?
我的基本自定义错误代码:
[DataContract]
public class BookingException
{
[DataMember]
public string Messsage { get; set; }
[DataMember]
public string Description { get; set; }
}
服务接口代码:
[OperationContract]
[FaultContract(typeof(BookingException))]
void InsertBooking(Booking booking);
服务代码:
public void InsertBooking(Booking booking)
{
throw new FaultException<BookingException>(new BookingException());
}
客户代码:
catch (FaultException<BookingException> ex)
{
//TODO
}
catch (Exception ex)
{
//TODO
}
当客户端是控制台应用程序或表单应用程序时,这可以正常工作,但如果我将这个客户端代码放入WPF应用程序中,那么catch总是异常,而不是自定义异常。
答案 0 :(得分:1)
我通过评论帮助解决了我的问题。我有两个代理,一个在我的控制台应用程序中,另一个在我的WPF应用程序中,两个代理使用相同的服务引用,但两个代理都有不同的方式引用服务,这种差异就是问题所在。
WPF not have any problems with custom erros
。
感谢那些帮助我发表意见的人。