繁体   English   中英

WCF是单向属性

[英]WCF IS One Way attribute

我有一个将isoneway属性设置为true的wcf方法。现在当我从客户端调用此服务时,服务将无效的操作异常返回给某些业务场景出错的客户端bcos。我的理解是它将抛出只有endpointnotfound异常和timeoutexception。有人可以解释为什么会这样吗?

将您的合同标记为“单向”意味着:消息仅以一种方式流动。 客户根本不会得到答案,也根本不会等待服务执行,因此您的客户在大多数时间都不可能从服务中获得答复或错误。

如果您愿意,那么单向服务可能不适合您,而您真正想要的是带有空回复(即无效)的双向服务

OneWay方法是否返回值或具有ref / out参数? 如果是,那么这就是您收到InvalidOperationException的原因。 根据对OperationContractAttribute.IsOneWay属性( http://msdn.microsoft.com/zh-cn/library/system.servicemodel.operationcontractattribute.isoneway(v=vs.110).aspx )的MSDN帮助,这是预期的行为。

查找备注部分,其中包含以下文本:

单向方法不得返回值或具有ref或out参数; 否则抛出System.InvalidOperationException异常。

PS:我知道现在回复该帖子为时已晚,但是对于像我这样在3年左右后偶然发现帖子的人来说,这可能会很有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM