2017-03-24 12 views
0

ハングファイアのダッシュボードを自分のアプリケーション内に実装するという要件があります。私のホームページに、ダッシュボードのリンクをクリックするとダッシュボードのリンクが表示されます。MVC Asp.netコアを使用したHangfireの実装

以下のコードは、私はダッシュボードのリンク

public void BuildNavigation(string name, NavigationBuilder builder) 
     { 
      if (!String.Equals(name, "menu", StringComparison.OrdinalIgnoreCase)) 
      { 
       return; 
      } 

      builder 
        .Add(T["Dashboard"], "1", installed => installed.Action("Index", "HangfireDashboard", "Modules.HangfireDashboard")); 
     } 

Startup.cs

public class Startup : StartupBase 
{ 

    public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, IServiceProvider serviceProvider) 
    { 

     app.UseMvc(routes => 
     { 
      routes.MapRoute(name: "default", template: "{controller=HangfireDashboard}/{action=Index}/{id?}"); 
     }); 

     app.UseHangfireServer(options: new BackgroundJobServerOptions() 
     { 
      Activator = new JobActivator() 
     }); 
     app.UseHangfireDashboard("/TestPage"); 


    } 

    public override void ConfigureServices(IServiceCollection services) 
    { 
     services.AddHangfire(configuration => configuration.UseSqlServerStorage(TenenatDbConfigurationProvider.GetDefaultConnectionString())); 
     services.AddScoped<INavigationProvider, ModulesMenu>(); 
    } 
} 

これは、モジュールのインデックスページないhangfireのダッシュボードを開いているのクリックで

を試してみました。

おかげで

のDev

+0

希望を参照する必要があります。しかし、私のASP.NET WebAPIプロジェクトでは、追加設定なしでhttp:// myapp/hangfireのようなダッシュボードにアクセスすることができます(デフォルトではルートが追加されます) –

+1

「Orchard」とタグ付けされているのはなぜですか? – devqon

+0

オーチャードのフレームワークも使用しています –

答えて

0

ドントは、私はあなたが正しい得た場合知っている誰もがあなたのモジュール内でこれを実装している場合、私に知らせて - しかし、私はしようとしてyou'reを理解されるように、FASとしてリンクを使用してハンギングダッシュボードにアクセスします。

Dilhanは既にコメントしていますが、デフォルトルートは[your site]/hangfireですが、文字列引数をapp.UseHangfireDashboard("/TestPage")に指定すると、割り当てられた文字列が新しいルートになります。あなたはhangfire-ダッシュボードにアクセスしたいのであれば、あなたは.. [サイト]/TestPage役立ちます:) ASP.NETコアわからない

関連する問題