0
嗨我需要創建wcf服務與回撥。因爲該服務需要更新Windows用戶界面進行長時間操作。你能幫我用適合wcf服務和客戶端的配置嗎?回撥配置wcf服務
嗨我需要創建wcf服務與回撥。因爲該服務需要更新Windows用戶界面進行長時間操作。你能幫我用適合wcf服務和客戶端的配置嗎?回撥配置wcf服務
在web.xml中配置爲wsdualhttpbinding。因爲在使用回調方法時http是一種無狀態協議,因此您需要使用wsdualhttpbinding inturn調用客戶端實現的方法。
用回調方法定義接口並在客戶端實現該方法。
定義和配置回調契約:
public interface IMyContractCallback
{
[OperationContract]
void OnCallback();
}
[ServiceContract(CallbackContract = typeof(IMyContractCallback))]
public interface IMyContract
{
[OperationContract()]
void MyMethod();
}
客戶端回調設置:
class MyServiceClient:DuplexClientBase,IMyContract
{
public MyServiceClient(InstanceContext callbackCntx)
: base(callbackCntx)
{
}
public void MyMethod()
{
base.Channel.MyMethod();
}
}
服務端回調調用:
IMyContractCallback
callbackInstance=OperationContext.Current.GetCallbackChannel();
callbackInstance.OnCallback();