Ich habe mit Hangfire in einer Microsoft MVC-Anwendung gespielt. Ich habe es geschafft, Fire-and-Forget-Aufgaben zu kompilieren und zu planen, aber ich bin überrascht, dass ich keine Jobs hinzufügen/entfernen kann, während das Programm läuft. Stimmt es, dass Hangfire Aufgaben zur Laufzeit nicht dynamisch planen kann? Gibt es ein wohlbekanntes Framework, das es ermöglicht, Tasks auch nach der Kompilierung oder Bereitstellung der Anwendung zu planen, ohne den C# -Code jedes Mal ändern zu müssen, wenn ich Aufgaben hinzufügen möchte?Kann Hangfire Änderungen an geplanten Aufgaben ohne Neuinstallation verarbeiten
Ich habe auch Quartz.NET erforscht, und es scheint das gleiche Problem zu haben.
EDIT:
Windows-Taskplaner erlauben können Aufgaben mit einer GUI geplant werden, und UNIX cron können Aufgaben hinzugefügt oder entfernt haben, indem Sie eine Datei bearbeiten, aber ich bin für eine Art von Anwendung ausgeführt suchen unter Windows, die es dem Benutzer ermöglichen würde, Aufgaben hinzuzufügen oder zu entfernen nach die Anwendung wurde bereitgestellt. Ich möchte die Anwendung nicht jedes Mal neu kompilieren, wenn ich Aufgaben hinzufügen oder entfernen möchte.
I bin vertraut mit Quartz.NET, so hat Ihre letzte Aussage eine Flagge ausgelöst. Ich warf einen kurzen Blick auf die Hangfire-Dokumentation, und ich bin mir nicht sicher, ob Ihr Verständnis korrekt ist ... –
Nach meinem Verständnis kann Hangfire Aufgaben planen, kein Problem. Aber nur Aufgaben, die Sie in C# fest programmiert haben. Während Hangfire läuft, habe ich keine Möglichkeit gefunden, Aufgaben dynamisch nach der Kompilierzeit hinzuzufügen. Nirgends in den Dokumenten habe ich festgestellt, dass Hangfire Aufgaben zur Laufzeit dynamisch planen kann. –
Ihre Frage ist mehrdeutig und verwirrend. "... Aufgaben während der Laufzeit dynamisch planen." Das bedeutet natürlich "Hinzufügen und Entfernen neuer einfacher/verzögerter/geplanter Tasks zur Laufzeit", die sowohl Quartz als auch Hangfire ausführen. Sie können sicherlich "Jobs hinzufügen/entfernen, während das Programm läuft." Sie scheinen nach etwas anderem zu fragen, einem Werkzeug, das indexieren und Ihnen erlauben kann, dynamisch definierten Code oder Code aus einer zur Laufzeit geladenen Bibliothek auszuführen. Das ist ein * ganz anderes * Problem, und nicht ein Job-Scheduler ist so konzipiert, dass er OOTB anspricht. –