2017-02-20 2 views
-1

WindowsサービスでMS Windows Azureキューを使用してメッセージを読み取ろうとしています。 Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSyncでMicrosoft.WindowsAzure.Storage.StorageException [[可能System.Boolean、mscorlib、バージョン=:queuereferenceを作成しながら、私は、エラーの下WindowsサービスでAzureキューを使用するc#

例外情報を取得しています4.0.0.0、Culture =ニュートラル、PublicKeyToken = b77a5c561934e089]](Microsoft.WindowsAzure.Store.Core.Executor.RESTCommand`1、Microsoft.WindowsAzure.Storage.RetryPolicies.IRetryPolicy、Microsoft.WindowsAzure.Storage.OperationContext) WindowsAzure.Storage.Queue.CloudQueue.CreateIfNotExists(Microsoft.WindowsAzure.Storage.Queue.QueueRequestOptions、Microsoft.WindowsAzure.Storage.OperationContext)

しかし、同じコードがコンソールアプリとして機能します。

CloudStorageAccount storageAccount = CloudStorageAccount.Parse(GetQueueSource); 
     CloudQueueClient queueClient = storageAccount.CreateCloudQueueClient(); 
     CloudQueue queue = queueClient.GetQueueReference(QueueRef); 
     queue.CreateIfNotExists(); //getting error at this point 
     return queue; 
+1

キュー名は何ですか? –

+0

このコードは、コンソールアプリケーションとWindowsサービスの両方で同じマシンで実行されていますか? –

+1

例外メッセージとは何ですか? –

答えて

0

私がメッセージを読むために、WindowsサービスにMSのWindows Azureのキューを使用しようとしています。キュー参照の作成中にエラーが発生する

単純なWindowsサービスアプリケーションを作成し、このようなコードをOnStartメソッドに入れます。

protected override void OnStart(string[] args) 
{ 
    CloudStorageAccount storageAccount = CloudStorageAccount.Parse("DefaultEndpointsProtocol=https;AccountName={mystorageaccountname};AccountKey={account key}"); 

    CloudQueueClient queueClient = storageAccount.CreateCloudQueueClient(); 

    CloudQueue queue = queueClient.GetQueueReference("myqueue"); 

    queue.CreateIfNotExists(); 

    CloudQueueMessage mes = new CloudQueueMessage("windows service mes"); 
    queue.AddMessage(mes); 
} 

サービスが自分の側で実行されると、キューが作成され、メッセージがこのキューに追加される可能性があります。私はWindowsAzure.Storage v8.1.0と.NET Framework 4.5を使用しています。

<package id="WindowsAzure.Storage" version="8.1.0" targetFramework="net45" /> 

新しいWindowsサービスアプリケーションを作成し、同じコードでテストしてエラーなしでキューメッセージを操作できるかどうかを確認できます。また、キュー名がthese rulesであることを確認してください。

関連する問題