2013-08-30 70 views
0

這裏是我的雙工WCF服務生成的代理:我應該傳遞給雙工WCF客戶實例上下文

public partial class MyWcfServiceClient : System.ServiceModel.DuplexClientBase<Ifa.WcfClients.ServiceReference1.IMyWcfService>, Ifa.WcfClients.ServiceReference1.IMyWcfService { 

    public MyWcfServiceClient(System.ServiceModel.InstanceContext callbackInstance) : 
      base(callbackInstance) { 
    }    
     . 
     . 
     . 
} 

我想從這個類繼承,並建立一個新的類是這樣的:

public class WcfClientBase : MyWcfServiceClient 
{ 
    public WcfClientBase() : base(???) 
    { 
    } 

    somemethod1(){....} 
    somemethod2(){....}  
} 

我的問題是基類需要參數InstanceContext。我應該通過什麼作爲這個論點?

回答

1

這是一個雙工設置權?意味着服務器通過回調函數傳回結果。

因此,客戶端需要指定具有這些回調方法的類 - 它將在服務器的回覆中調用。

您需要編寫一個實現回調接口的類(它將成爲服務契約的一部分),然後將此類的一個對象傳遞給InstanceContext。

+0

是的。所以如果服務器調用客戶端方法,我的WcfClientBase中聲明的方法是否被調用?或在回調類中聲明的方法? –

+1

它們將是您傳遞給InstanceContext的對象中的方法,該對象將是回調類。 – Vivek

+0

accodring到此,我不能創建一個子類形式雙工wcf客戶端 –

相關問題