1

私は MVC 5 インターネット アプリケーションをコーディングしておりHangfire、定期的なタスクに使用したいと考えています。

関数でこれを指定せずHangfireに使用するように設定するにはどうすればよいですか。SQL Server storageStartup.Auth ConfigureAuth(IAppBuilder app)

SQL Server 構成のリソース リンクは次のとおりです: http://docs.hangfire.io/en/latest/configuration/using-sql-server.html

このリソースには次のように記載されています。

OWIN Startup クラスが適用されない Web アプリケーションの外部で Hangfire を使用する場合は、SqlServerStorage のインスタンスを手動で作成し、それを JobStorage.Current 静的プロパティに渡します。パラメータは同じです。

コード例は次のとおりです。

JobStorage.Current = new SqlServerStorage("connection string or its name");

次のコードを (独自の接続文字列で) 試しましたが、ダッシュボードは利用できません。コントローラー関数から上記のコードを呼び出しました。

私が正しく行っていないことはありますか?クラスHangfireを使用SQL Server storageせずに使用するように設定するにはどうすればよいですか?Startup.Auth

前もって感謝します。

4

1 に答える 1

2

これがあなたの問題だと思います:

コントローラー関数から上記のコードを呼び出しました。

これは、アプリケーションの起動時に一度設定する必要があります - ConfigurationOWINStartupクラスのメソッド (その後にapp.UseHangFireServer();)、または本当に OWIN を使用したくない場合Application_Startは自分のメソッドのいずれかです。Global.asax.csいずれにせよ、探している行は、参照しているドキュメントにあります。

Hangfire.GlobalConfiguration.Configuration.UseSqlServerStorage(@"connection string or connection string name");

ただし、私の知る限り、ダッシュボードを使用する場合は、OWIN と認証フィルターを使用してその部分を構成する必要があります。http://docs.hangfire.io/en/latest/configuration/using-dashboard.htmlを参照してください。

本当に、このすべてに OWIN 構成を使用することの欠点があるかどうかはわかりません。これはより最新のプラットフォームであり、これは MVC5 アプリ用であると述べているため、従来の懸念がある可能性は低いです。

于 2015-06-30T16:40:53.247 に答える