2016-09-05 9 views
0

私はAzureのウェブ求人Timmerトリガ例外

JobHostConfiguration config = new JobHostConfiguration(); 
config.UseTimers(); 

JobHost host = new JobHost(config); 
host.Call(typeof(Functions).GetMethod("CronJob")); 
host.RunAndBlock(); 

public static void CronJob([TimerTrigger("0 */5 * * * *")] TimerInfo timer) 
{ 
    Console.WriteLine("Cron job fired!"); 
} 

https://github.com/Azure/azure-webjobs-sdk-extensions)紺碧-webjobs-SDK-の拡張機能を使用してトリガ紺碧のWebジョブを実行しようとしているしかし、私はこの例外を取得しています。

Microsoft.Azure.WebJobs.Host System.ObjectDisposedException 

私もそのgitbugレポからサンプルプロジェクトをdownloding試してみたが、それでもこれらのTimerTriggerの例で私は、同じ例外を取得しています。

アイデア? ありがとう

+0

使用しているSDKのバージョンはどれですか? – Thomas

+0

最新バージョン。 1.0.1ナゲットを使ってバージョンを指定せずにインストールしましたので、最新の安定したものを取ったと思います(コードを元に戻して100%確信していないのです) – Mihai

+0

この行 'host.Call(typeof関数).GetMethod( "CronJob")); '?あなたはそれを必要としません。この答えを見て、それが動作しているかどうか教えてください。http://stackoverflow.com/a/34235136/4167200? – Thomas

答えて

1

host.Call(typeof(Functions).GetMethod( "CronJob"));

CronJob機能にはTimerInfoパラメータを指定する必要があります。 CronJob関数は、定義したTimeTriggerによって自動的に呼び出されます。

host.Call(typeof(Functions).GetMethod("CronJob"),new { timerInfo = new TimerInfo(null, null) }); 

しかし、私はこのexception.Microsoft.Azure.WebJobs.Host System.ObjectDisposedException

取得しています:あなたは host.RunAndBlock()を呼び出す前に CronJob機能を起動したい場合は、次のコードを参照してください可能性があり

あなたの説明によると、あなたが言及したGitHubからサンプルプロジェクトをダウンロードし、関連パッケージのバージョンが古いことがわかりました。 tutorialに従ってAzure WebJobプロジェクトを作成し、Microsoft.Azure.WebJobsMicrosoft.Azure.WebJobs.Extensionsの最新バージョンパッケージをインストールして、TimeTriggerの機能をテストしてください。

+0

ありがとうございます。私は今それに行くだろう。私はそれが動作するかどうかをお知らせします:) – Mihai

+0

うーん..それは働いた。 Microsoft.Azure.WebJobsバージョン1.1.0と拡張機能1.0.1.0を使用しましたが、メソッドを明示的に呼び出さなかった。たぶん私は昨日何かを逃した、知っている。ありがとう:) – Mihai

関連する問題