2016-04-13 16 views
1

Rebusライブラリを使用してAzure ServiceBus経由でメッセージを受け取るアプリケーションがあります。AzureにデプロイされたときにMessageHandlerが呼び出されない

アプリケーションをAzure上でWebアプリケーションとして実行すると、ローカルで実行したときとは違った動作が観察されます。

Azureで実行すると、メッセージハンドラが呼び出されていません。 アプリケーションがローカルで実行されている場合、すべてが期待通りに機能します。

これは私の設定です。プロジェクトServiceBusで

protected void Application_Start() 
    { 
     _webContainer = new WindsorContainer(); 
     _queueContainer = new WindsorContainer(); 
     ConfigureWebContainer(); 
     _queueContainer.Install(FromAssembly.Containing<ServiceBusInstaller>()); 

     ApplicationInsightsConfig.Configure(); 
    } 

(ServiceBusInstallerがどこにあるか)

public void Install(IWindsorContainer container, IConfigurationStore store) 
{ 
    var adapter = new CastleWindsorContainerAdapter(container); 
    var connectionString = CloudConfigurationManager.GetSetting("QueueUrl"); 

    var configurer = Configure 
    .With(adapter) 
    .Options(o => 
    { 
     o.SimpleRetryStrategy(maxDeliveryAttempts: 0); 
    }) 
    .Logging(l => l.Log4Net()) 
    .Routing(r => r.TypeBased() 
     .MapAssemblyOf<ResetPasswordMessage>("Email")) 
    Transport(t => t.UseAzureServiceBus(connectionString, "Email")); 
    // Create and starts the bus 
    configurer.Start(); 
} 

マイResetPasswordHandlerは次のようになります:

public class ResetPasswordHandler : IHandleMessages<ResetPasswordMessage> 
{ 
    private readonly IContactAndEmailService _contactAndEmailService; 

    public ResetPasswordHandler(IContactAndEmailService contactAndEmailService) 
    { 
     _contactAndEmailService = contactAndEmailService; 
    } 

    public async Task Handle(ResetPasswordMessage message) 
    { 
     _contactAndEmailService.SendEmail(message); 
    } 
} 
私のWebプロジェクトポータル、Global.asax.csで

サービスバスエクスプローラを使用してservに接続していますアイスバスに乗って、メッセージが「電子メール」キューに入っていることがわかります。しかし、それはそこにとどまるので消費されません。

セットアップまたは紺碧の購読制限のいずれかの指針は、私が前進するのを助けることができます。

+1

奇妙な音...キュー名のスペルを試してみることができますか? – mookid8000

+1

私はちょうどそれをし、実際に働いた。大文字と小文字を区別しないという誤った仮定がありました。どうもありがとう。あなたは答えとして投稿することができ、私はそれを受け入れるでしょう。将来の読者のためだけに。 – AndreasPK

答えて

1

キュー名のケーシング(Email)と何か関係があると思います。

全体を通して小文字にすることはできますか?

関連する問題