Ho cercato su SO e ho trovato risposte su Quartz.net. Ma sembra essere troppo grande per il mio progetto. Voglio una soluzione equivalente, ma più semplice e (nella migliore delle ipotesi) in-code (non è necessaria alcuna libreria esterna). Come posso chiamare un metodo ogni giorno, in un momento specifico?Come chiamare un metodo ogni giorno, in un momento specifico, in C#?
Ho bisogno di aggiungere alcune informazioni su questo:
- il modo più semplice (e brutto) per fare questo, è controllare il tempo ogni secondo/minuto e chiamare il metodo, al momento giusto
Voglio un modo più efficace per farlo, non c'è bisogno di controllare costantemente il tempo, e ho il controllo sul fatto che il lavoro sia fatto o meno. Se il metodo non riesce (a causa di eventuali problemi), il programma dovrebbe sapere di scrivere per registrare/inviare una e-mail. Ecco perché ho bisogno di chiamare un metodo, non programmare un lavoro.
Ho trovato questa soluzione Call a method at fixed time in Java in Java. C'è un modo simile in C#?
EDIT: Ho fatto questo. Ho aggiunto un parametro a Main() e creato un blocco (pianificato dall'Utilità di pianificazione di Windows) per eseguire il programma con questo parametro. Il programma viene eseguito, esegue il lavoro e quindi esce. Se un lavoro fallisce, è in grado di scrivere log e inviare e-mail. Questo approccio si adatta alle mie esigenze ben :)
quello legato questione sembra indicare che un metodo all'interno della vostra applicazione in esecuzione deve essere chiamato periodicamente. È questo il caso? Avrà un impatto se è necessaria la pianificazione in-process o se è possibile utilizzare semplicemente lo scheduler di Windows. – paxdiablo
il mio programma, come da requisiti, funzionerà continuamente – Vimvq1987
Ehi, non posso credere che tu abbia definito la mia risposta "brutta". Loro combattono le parole :-) – paxdiablo