1

メソッドを 30 秒ごとに実行する必要があります。単純に、IP で制限された 1 つのページを作成し、スケジュールされたタスクで 30 秒ごとに CURL を介して呼び出すつもりでした。

ある記事を読んでいて、hangfire について知りました。

そのため、Entity Framework Code First で構築された既存のアプリケーションがあります。標準データベースでデフォルトのハングファイア設定を使用してみましたが、「ユーザーのログインに失敗しました」という黄色い画面が表示され続けます。

それで、これを標準のエンティティ フレームワーク テーブル \ 単一の DbContext 内で機能させる簡単な方法はありますか、それとも独自のデータベースとログインを与えるだけのほうがよいのでしょうか?

コメントに従って更新するには:

私は真新しいMVCアプリを使用しており、単純にハングファイアをインストールしています。接続文字列は次のとおりです。

<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-myproject-20150404061144;Integrated Security=True" providerName="System.Data.SqlClient" />

そして私は追加しました:

        GlobalConfiguration.Configuration.UseSqlServerStorage("DefaultConnection");
        app.UseHangfireDashboard();
        app.UseHangfireServer();

ただし、起動すると、次のようになります。

ここに画像の説明を入力

スタートアップ クラスからこれらの 3 行を削除すると、アプリケーションは通常どおりに実行されます。そのため、EF が接続できるときにハングファイアが何をしているのかわかりません。

4

2 に答える 2

-3

これはおそらく、プロジェクトに localDB を使用しているためです。明らかに、ジョブを作成する必要があり、Hangfire がメッセージ キューに似ている場合は、ある程度高速なストレージ ソリューションが必要です。LocalDB は決して高速ではなく、おそらく Hangfire が依存する多くの機能が欠けています。

于 2015-06-08T14:31:47.670 に答える