2014-02-20 94 views
0

我想在WPF中創建一個需要將消息發送到屬於其他雲應用程序的Azure隊列的Windows應用程序。稍後,工作者角色將從隊列中提取這些消息並對數據進行一些操作。從WPF應用程序發送消息到Azure隊列

  • 它甚至可能或者我必須使用具有Web角色的雲應用程序嗎?
  • 如果是這樣,有人能指點我一個很好的閱讀來源,如何做到這一點?
  • 如果不是,我該如何製作一個使用Azure隊列的Windows可執行應用程序?

編輯:這是我的代碼,我包括在此:

using Microsoft.WindowsAzure; 
using Microsoft.WindowsAzure.StorageClient; 
using Microsoft.WindowsAzure.ServiceRuntime; 


var storageAccount = CloudStorageAccount.FromConfigurationSetting("DataConnectionString"); 
var queue = storageAccount.CreateCloudQueueClient(); 

我得到這個異常:

SetConfigurationSettingPublisher needs to be called before FromConfigurationSetting can be used 

我試圖查找此異常,但沒」找到一個正常的解決方案。每篇文章都在談論一個天藍色的雲應用程序,同時我正在嘗試從WPF開始。

回答

0

我設法讓它工作,並得到朋友的幫助。這是我做過什麼:

新增參考System.Configuration爲了使用ConfigurationManager

添加到在app.config:

<appSettings> <add key="StorageConnectionString" value="UseDevelopmentStorage=true;DevelopmentStorageProxyUri=http://127.0.0.1:10001/"/> </appSettings>

爲了連接到本地存儲賬戶:

CloudStorageAccount st = CloudStorageAccount.Parse(ConfigurationManager.AppSettings["StorageConnectionString"].ToString());

希望它可以幫助其他卡住同樣的問題!

1

只要您有適當的權限,就可以從任何地方將郵件發送到Azure隊列。我假設你在談論存儲隊列(與服務總線隊列):你需要存儲帳戶密鑰或隊列的共享訪問簽名。在這一點上,你可以寫任何你想要的應用程序的消息。

只需創建隊列客戶端,創建消息並向隊列添加消息。如果您的應用在內部部署,移動設備上或與存儲隊列的存儲帳戶不同的數據中心內部運行,添加消息時會有一些延遲,但在其他情況下可以正常工作。

+1

當然,你需要從的NuGet的WindowsAzure.Storage軟件包安裝到您的WPF應用程序;) –

+0

Iv'e添加一個問題,因爲我仍然無法得到它的工作。 – Technotronic

+1

問題在於您檢索連接字符串的方式。看看[這StackOverflow問題/答案](http://stackoverflow.com/questions/17789937/azure-storage-sdk-v1-3-to-v2-setconfigurationsettingpublisher)的更多信息。 –

相關問題