WPF 客户端未捕获来自 WCF 的自定义异常
WPF client does not catch custom exception from WCF
我有一个自定义异常,当客户端是控制台应用程序或表单应用程序时它工作正常,但如果客户端是 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 应用程序,则捕获的总是异常,而不是自定义异常。
我在评论帮助下解决了我的问题。我有两个代理,一个在我的控制台应用程序中,另一个在我的 WPF 应用程序中,两个代理使用相同的服务引用,但是两个代理引用服务的方式不同,这种差异就是问题所在。
WPF not have any problems with custom erros
。
感谢那些帮我提意见的人。
我有一个自定义异常,当客户端是控制台应用程序或表单应用程序时它工作正常,但如果客户端是 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 应用程序,则捕获的总是异常,而不是自定义异常。
我在评论帮助下解决了我的问题。我有两个代理,一个在我的控制台应用程序中,另一个在我的 WPF 应用程序中,两个代理使用相同的服务引用,但是两个代理引用服务的方式不同,这种差异就是问题所在。
WPF not have any problems with custom erros
。
感谢那些帮我提意见的人。