Heim  >  Artikel  >  WeChat-Applet  >  Verwenden Sie C#, um die gemeinsame Nutzung von Timing-Applet-Code zu realisieren

Verwenden Sie C#, um die gemeinsame Nutzung von Timing-Applet-Code zu realisieren

高洛峰
高洛峰Original
2017-03-14 16:25:022293Durchsuche

Dieser Artikel verwendet C#, um den Code eines kleinen Timer-Programms zu teilen

Ich dachte immer, das Timer-Programm sei so mysteriös. Später, als ich tatsächlich selbst ein kleines Timer-Programm schrieb, Ich habe festgestellt, dass es tatsächlich gar nicht so schwierig ist, wie ich es mir vorgestellt habe. Im Folgenden werde ich meinen eigenen Betriebsprozess vorstellen und hoffe, dass er für alle hilfreich ist.

1) Fügen Sie einen -Verweis auf die -Datei in unserem Projekt hinzu: TaskSchedulerEngine.dll (dll definiert eine ITask--Schnittstelle , die zwei definiert Methoden Initialize und HandleConditionsMetEvent);

2) Erstellen Sie eine regelmäßig ausgelöste Klasse: SyncTask.cs (definieren Sie den Klassennamen nach Ihren Wünschen), diese Klasse muss die Schnittstelle ITask implementieren. Der spezifische Code lautet wie folgt:

public class SyncTask : ITask
{
  //接受传递过来的参数的变量
  private string configName;
  
 /// <summary>
  /// 具体操作的代码
  /// </summary>
  public void HandleConditionsMetEvent(object sender, ConditionsMetEventArgs e)
  {
    try
    {
      // 此处为具体的操作
    }
    catch (Exception ex)
    {
      //抛出异常,记录错误日志
    }
  }
 
  /// <summary>
  /// 初始化
  /// </summary>
  /// <param name="schedule"></param>
  /// <param name="parameters">参数(该参数在定时触发设置时传递)</param>
  public void Initialize(ScheduleDefinition schedule, object parameters)
  {
   //通过传递过来的参数来初始化变量
    configFileName = parameters.ToString();
    try
    {
      //初始化的具体代码
    }
    catch (Exception e)
    {
   //抛出异常,记录错误日志 
    }
  }
}

3) Konfigurieren Sie die Datei app.config, Konfigurationsdatei Anweisungen zur Parametereinstellung:

a. 02df3f2f2ebe8e75cc30d78a35e8053c< ;/at> ist eine Aufgabe, die zu unterschiedlichen Zeiten ausgelöst wird. Sie müssen für jedes Programm einen Namen festlegen : Wo ist die Aufgabe? Trigger im Monat, * bedeutet Trigger am Tag jedes Monats, * bedeutet Trigger am Tag der Woche, * bedeutet Trigger am Tag der Woche; Zeit jeden Tag, * bedeutet jede Stunde Auslösen einmal pro Minute; 58 bedeutet Auslösen bei 58 Minuten pro Sekunde: Auslösen bei einigen Sekunden pro Minute;

b. caad54b9ae1798c64144e226972487cc ist die Klasse, die ausgelöst werden muss, geben Sie Folgendes ein: „Die detaillierte Adresse der Klasse, die ausgelöst werden muss (Projektname. Ordnername. Klassenname), Projektname, Version.“ , Culture, PublicKeyToKen", Parameter: Parameter, die übergeben werden müssen. Wenn keine Parameter übergeben werden, können sie auf "" gesetzt werden;

<taskSchedulerEngine>
 <schedule>
  <at name="TaskName" month="*" dayOfMonth="*" dayOfWeek="*" hour="*" minute="58" second="0" kind="Local">
  <execute>
   <task type="Test.Task.SyncTask, Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" parameters="FtpConfig.xml" />
  </execute>
  </at>
 </schedule>
</taskSchedulerEngine>

4) Hauptprogramm So starten Sie das Timer-Programm:

SchedulerRuntime.StartWithConfig();

OK, jetzt wurde ein komplettes Timing-Programm geschrieben. Freunde, Sie können gerne Ihre wertvolle Meinung äußern.

Das obige ist der detaillierte Inhalt vonVerwenden Sie C#, um die gemeinsame Nutzung von Timing-Applet-Code zu realisieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn