2012-04-13 26 views
0

我創建了一個多端點的WCF服務並使用,它工作正常。爲什麼以下代碼在使用WCF服務的多個端點時返回錯誤?

但是,當我試圖關閉服務客戶端,然後得到錯誤。

這是我正在創建的客戶對象和處理其工作的罰款單端點WCF服務

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     ICardPrintingService Service = null; 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      Service = new CardPrintingServiceClient(); 
      var response = this.Service.GetCardData(new GetCardDataRequest { NIK = 6666620501740003 }); 
      try 
      { 
       ((CardPrintingServiceClient)Service).Close(); 
      } 
      catch (Exception ex) 
      { 
       MessageBox.Show("error"); 
      } 
     } 
    } 
} 

關閉與錯誤消息的連接時,這將catch塊

遠程端點不再識別該序列。這可能是由於遠程端點上的中止導致的大部分 。值爲 wsrm:標識符不是已知的序列標識符。可靠的 會話出現故障。

有人能告訴我爲什麼嗎?

由於一噸的進階

Raghavendra

回答

0

什麼是overhere鑄造的需要。

((CardPrintingServiceClient)Service).Close(); //pls explain this. 

你可以在finally塊中試試這個。

if (Service.State != System.ServiceModel.CommunicationState.Closed) 
    { 
    Service.Abort(); 
    } 
+0

爲我創造了接口的對象我通過我的服務將無法關閉該服務爲Service.Close所以我將類型轉換的服務來服務客戶端暴露,然後需要關閉並感謝更新將嘗試 – 2012-04-16 04:23:56

+0

非常感謝用戶GS解決了這個問題,但會在完成診斷後發佈統計信息 – 2012-04-16 07:14:56

相關問題