Une conception RO: minuterie système à l'échelle (C #). La minuterie dans quelle couche?
-
01-10-2019 - |
Question
Merci d'avoir pris le temps de lire cette question.
Je suis la conception d'une solution à 3 niveaux écrit en C # qui doit effectuer le traitement de chaque minute. Le traitement doit être initié en même temps de différentes parties non connectées du programme.
Quelle est la meilleure façon de mettre en œuvre une minuterie de l'ensemble du système? Devrait-il être dans la couche logique métier ou une couche interface utilisateur? Quel genre de minuterie est préférable, par exemple un de System.Forms de System.Threading de ou? Y at-il une règle de base de cette situation?
Merci beaucoup
La solution
Je dirais avoir une classe statique ou singleton dans votre couche d'affaires exposer un événement, qui peut être souscrite par tout le monde dans l'application.
J'utiliser System.Threading.Timer, qui utilise son propre fil. System.Windows.Forms, au contraire, est destiné à être utilisé à l'intérieur d'un contrôle (et je pense que fonctionne dans le thread d'interface utilisateur).