2012-04-02 56 views
1

我正在使用適用於Windows Phone的Windows Azure工具包,但我難以發送隊列消息到雲服務。這裏是我的代碼:如何從Windows Phone發送隊列消息?

public void SendQueueMessage(string queueReference, params string[] message) 
    { 
     CloudQueue cloudQueue = new CloudQueue(); 
     CloudQueueClient queueClient = new CloudQueueClient(queueUri, credentials); 
     queueClient.GetQueueReference(queueReference); 

     StringBuilder sb = new StringBuilder(); 
     foreach (var messagePart in message) 
     { 
      sb.Append(messagePart); 
      sb.Append(":"); 
     } 
     sb.Remove(sb.Length - 2, 1); 
     CloudQueueMessage queueMessage = new CloudQueueMessage { AsBytes = Encoding.UTF8.GetBytes(sb.ToString()) }; 
     cloudQueue.AddMessage(queueMessage, r => this.dispatcher.BeginInvoke(() => 
                      { 
                       if(r.Exception != null) 
                       { 
                        //handle exception 
                       } 
                      })); 
    } 

我總是得到null異常在AddMessage方法。任何想法?

回答

1

我懷疑你現在可能已經發現瞭如何做到這一點,但經過多番研究,我發現如何通過這個cloudcove r的插曲添加隊列到Windows Phone存儲。你應該在13:44分鐘左右看。

http://www.joshholmes.com/blog/2012/01/18/using-windows-azure-storage-from-the-windows-phone/

希望這將幫助你

編輯:複製從視頻的代碼就應該是這個樣子:

var queueClient = CloudStorageContext.Current.Resolver.CreateCloudQueueClient(); 
     var queue = queueClient.GetQueueReference("imagestodo"); 
     queue.Create(r => queue.AddMessage(
       new CloudQueueMessage 
       { 
        AsBytes = Encoding.UTF8.GetBytes(imageID), 
        Id = imageID 
       }, 
       c => 
        { 
         //logic here 
        })); 
+0

我通過觀察找到了答案兩週前的同一部影片。不管怎麼說,還是要謝謝你。 – 2012-04-21 06:53:21