2012-08-27 127 views
1

我從MessageQueue接收到我的消息。 下面是代碼:如何接收來自MessageQueue的消息

MyClass myClassObject = null; 
var msmq = new MessageQueue(@".\private$\myqueuename") 
         {Formatter = new XmlMessageFormatter(new Type[] {typeof (MyClass)})}; 
var receive = msmq.Receive(new TimeSpan(20000000000)); 

      if (receive != null) 
      { 
       myClassObject = (MyClass)receive.Body; 

      } 

我在myClassObject到底希望擁有的數據。

[DataContract] 
    public class 
      MyClass 
    { 

     [DataMember] 
     public long? Id 
     { 
      get; 
      set; 
     } 
..... 
    } 

我錯過了什麼? 非常感謝您提前!

+0

我得到這個錯誤:無法反序列化作爲參數傳遞的消息。無法識別序列化格式。在System.Messaging.XmlMessageFormatter.Read(Message message) at System.Messaging.Message.get_Body() –

回答

0

我認爲你需要驗證客戶端和服務器上的App.config文件。你寫的異常表明這個消息的序列化格式可能不與你的綁定關聯。

相關問題