Maison  >  Article  >  Applet WeChat  >  Utiliser C# pour réaliser le partage de code d'applet de synchronisation

Utiliser C# pour réaliser le partage de code d'applet de synchronisation

高洛峰
高洛峰original
2017-03-14 16:25:022286parcourir

Cet article utilise C# pour partager le code d'un petit programme de minuterie

J'ai toujours pensé que le programme de minuterie était si mystérieux Plus tard, quand j'ai moi-même écrit un petit programme de minuterie. , j'ai trouvé que ce n'était pas aussi difficile que vous le pensez. Ci-dessous, je partagerai mon propre processus opérationnel, en espérant qu'il sera utile à tout le monde.

1) Ajouter une référence au fichier dans notre projet : TaskSchedulerEngine.dll (dll définit une ITask interface , qui définit deux méthodes Initialize et HandleConditionsMetEvent) ;

2) Créez une classe régulièrement déclenchée : SyncTask.cs (définissez le nom de la classe comme vous le souhaitez), qui doit implémenter l'interface ITask. Le code spécifique est le suivant :

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) Configurez le fichier app.config, Fichier de configuration instructions de paramétrage :

a. ;/at> ; est une tâche. Si différents programmes sont déclenchés à des moments différents, vous devez définir plusieurs noms 02df3f2f2ebe8e75cc30d78a35e8053c : est le nom de chaque 02df3f2f2ebe8e75cc30d78a35e8053c, vous pouvez le nommer en fonction de vos propres besoins ; : où se trouve la tâche ? Déclencheur en mois, * signifie déclencher chaque mois ; dayofMonth : déclencher le jour de chaque mois, * signifie déclencher chaque jour de la semaine, * signifie déclencher chaque jour, heure : déclencher à quelle heure ; heure tous les jours, * signifie toutes les heures Déclencher une fois ; minute : déclencher à quelques minutes par heure, 58 signifie déclencher à 58 minutes par heure seconde : déclencher à quelques secondes par minute ;

b. 5a3616b73b29b6ef8523164b750a7aee est la classe qui doit être déclenchée, tapez : "L'adresse détaillée de la classe qui doit être déclenchée (nom du projet. nom du dossier. nom de la classe), nom du projet, version. , Culture, PublicKeyToKen", paramètres : paramètres à transmettre, si aucun paramètre n'est transmis, ils peuvent être définis sur "" ;

<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) Programme principal pour démarrer le programme de chronométrage :

SchedulerRuntime.StartWithConfig();

OK, maintenant, un programme de chronométrage complet a été écrit. Amis, vous êtes invités à donner vos précieux avis.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn