2012-04-02 58 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