私は現在、Azure Bus Serviceを稼働させてQueueを作成してから、メッセージをキューに入れてから他の場所で受信し、メッセージが通過したデータを使用してコードを実行しています。私は何か問題があっても、メッセージを送ってそれを受け取ることができるので、私はすべての設定と作業をしています。 調査中、私は同じタスクを完了するために2つの異なる方法論があるように見えました。まずAzure Bus Serviceを使用する場合、ServiceBus/ServiceBusTriggerの方法論とQueueClientを使用する方法との違いは何ですか?
:
public static void ProcessMessage([ServiceBusTrigger("QueueName")] string data)
{
//Do something with data
}
注:私はこの方法を使用しようと、メッセージが受信されている間午前、
public static void CreateMessage(string data, [ServiceBus("QueueName")] out string output)
{
output = data;
}
は、メッセージが表示されます。
は、メッセージを作成します。受信時にデータはNULLです。これについてのどんな助けも大いに感謝されるでしょう。
第二:だから、質問のカップルを
var queueName = "QueueName";
var client = QueueClient.CreateFromConnectionString(connectionString, queueName);
client.OnMessage(message =>
{
//do something with data
});
:
var client = QueueClient.CreateFromConnectionString(connectionString, queueName);
var message = new BrokeredMessage("This is a test message!");
client.Send(message);
は、メッセージが表示されます。
メッセージを作成します。
1.これらの2つの方法論の違いは何ですか?それぞれはどこで適用する必要がありますか?
2.Whilst最初の方法を使用して文字列を送信しようとしていますが、メッセージが受信されたにもかかわらず、 'データ'がnullとして送信される理由を教えてください。
サービスバスからメッセージを受信(および送信)するときに、あなたが 'BrokeredMessage'クラスを使用していない理由がありますか? –