c# - WCF - 回调接口(interface)可以指定为通用接口(interface)吗?

标签 c# wcf duplex

考虑一下,我将创建一个通用接口(interface)来订阅和取消订阅双工服务,例如:

[servicecontract(CallbackContract=typeof(ICallbackService))]
public interface IService
{
 [operationcontract]
 void sub();
 [operationcontract]
 void unsub();
}

public interface ICallbackService
{
[operationcontract(isoneway=true)]
void senddata(object data);
}

public interface IFirstService:IService{}
public interface ISecondService:IService{}

在客户端创建双工 channel 实例时,我的回调实例为

class callbackclass:ICallbackService{
public void senddata(object d){}
}

以及使用时

DuplexChannelFactory<IFirstService> fact=new DuplexChannelFactory<IFirstService>(new instancecontext(new callbackclass()),new wsdualhttpbinding(),"address");
var chan=fact.CreateChannel();

我遇到一个问题,说契约(Contract) IFirstService 没有定义任何操作。任何人都可以帮助解决这种情况吗?

最佳答案

不幸的是你不能。这是不可能的,因为 SOAP 不支持这一点。 Please read this article .

关于c# - WCF - 回调接口(interface)可以指定为通用接口(interface)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29096177/

相关文章:

java:读写操作上的单个套接字。全双工

.net - 为 SOAP 网络服务生成非双工代理代码

c# - 将 SAML token 发布到 ASP.NET MVC 网站

c# - 为什么编码后的 key 不等于原始 key ?

c# - .net c# 中的 Web api 路由属性正则表达式中的字符串参数应仅允许字母数字和点

c# - 发送包含 HTML 文件作为正文的电子邮件 (C#)

c# - 为什么 DateTime.MinValue 不能在 UTC 之前的时区中序列化?

没有异常消息详细信息的 WCF CommunicationException

wcf - 双工 WCF 服务在第 11 次调用时挂起

c# - WPF ListBox 属性绑定(bind)不更新