如何使用自己的OperationContext.Current.GetCallbackChannel接口?

时间:2009-11-26 16:51:36

标签: .net wcf asynchronous

另见Why do I get InvalidCastException from OperationContext.Current.GetCallbackChannel<>()

我希望将自己的接口传递给OperationContext.Current.GetCallbackChannel,因为我希望对客户端进行异步调用,因此需要在接口中添加“BeginMethod()”等。

我可以说,如果我传递任何接口,除了在我正在实现的服务器的ServiceContract中命名的接口之外,它就不能转换为接口。

E.g。我有

<ServiceContract(CallbackContract:=GetType(IClient))>

在服务器合同上

一个接口被定义为IClient的子类,它添加了“BeginMethod()”等,但我不能要求该接口:

 OperationContext.Current.GetCallbackChannel<IClientWithAsycMethods>()