2011-07-26 5 views

答えて

1

タイマーを使用して、これに類似した何か、:

protected override void OnStart(string[] args) 
{ 
     var timer = new System.Timers.Timer(); 
     timer.Elapsed += new ElapsedEventHandler(DoSomething); 
     //do something every 30 seconds 
     timer.Interval = TimeSpan.FromSeconds(30).TotalMilliseconds; 
     timer.Start(); 
} 

private void DoSomething(object sender, ElapsedEventArgs e) 
{ 
    //Do your timed event here... 
} 
+0

私はあなたのより明示的な答えを認めます。 –

+0

@brendan:エラーが発生しました4th行の 'void'を 'System.Timers.ElapsedEventHandler'に暗黙的に変換できません – MayureshP

+0

、残念ですが、Elapsedが新しいElapsedEvenHandlerになる必要があります – brendan

0

a timer

+0

実際にはいですが、Windowsサービス – MayureshP

+0

からWindowsサービスの例のための@ brendanの回答を参照してください –

+0

それは私のWebアプリケーションの一部である可能性がありますか? – MayureshP

0

はQuartz.NETを見てください。

"Quartz.NETは、小規模なアプリケーションから大規模なエンタープライズシステムまで、あらゆる機能を備えたオープンソースのジョブスケジューリングシステムです。

私はこれまで何らかのタイプのスケジューリングが必要なときに使用しました。

+0

適用可能です。これは、Windowsサービスの必要性を減らしたり削除したりするかもしれませんが、Windowsサービス自体の内部で何かを起動するために使用することはできません。 –

+0

Quartz.netスケジューラは、ジョブを簡単に実行できるライブラリです。ジョブは、アプリケーション内またはdll内のコードの一部です。このスケジュールは、12月1日から6月1日に実行されるようなタイミング機能、およびその他の優れた機能を備えています。このポストには多少の残虐行為があるかもしれませんが、クォーツの機能のいくつかは役に立ちます。 – Jethro

+0

はきれいに聞こえる。私はコメントする前に私の研究をすべきだったと思う、ちょうど提供された引用からの図書館より "システム"のより多くであると仮定した。 –