WCF:OneWay OperationContract 上的异常处理

Posted

技术标签:

【中文标题】WCF:OneWay OperationContract 上的异常处理【英文标题】:WCF: Exception handling on OneWay OperationContract 【发布时间】:2011-06-22 06:01:07 【问题描述】:

我有一个带有 Silverlight 客户端和 .NET 3.5 WCF 服务的 WCF 双工服务。

我的情况是:在从服务器到客户端的双工推送 OneWay 操作期间,如果客户端通知处理程序中发生异常,则通道会静默发生故障,因此来自服务器的任何进一步双工调用超时并失败。 (这里解释One-Way Operations and Exceptions)

我的问题:

    我可以只用FaultContractOneWay OperationContract 装饰,在客户端包装异常并防止通道故障吗? 如果不是,还有什么其他方法可以捕获在从服务器进行双工推送期间客户端发生的异常?

【问题讨论】:

这需要一个答案。 =[ 【参考方案1】:

当您使用OneWay OperationContract 时,接收方不应回复,请求的发送方也不应期待回复。

    你不能。 最好的办法是您可以在客户端和服务之间创建另一个OneWay OperationContract,以便服务可以将故障发送给客户端。

【讨论】:

以上是关于WCF:OneWay OperationContract 上的异常处理的主要内容,如果未能解决你的问题,请参考以下文章

使用 Windows 服务和 SQL Server 在 OneWay WCF 消息中排队

WCF:是不是可以在双工通道中使用流模式?

oneway 修饰符的理解

为啥绑定表达式在 OneWay 模式下分离?

关于Binder (AIDL)的 oneway 机制

UWP TabView OneWay x:绑定不更新