diff --git a/LehrerApp.Desktop/App.axaml.cs b/LehrerApp.Desktop/App.axaml.cs index 77790c5..696bfe6 100644 --- a/LehrerApp.Desktop/App.axaml.cs +++ b/LehrerApp.Desktop/App.axaml.cs @@ -79,6 +79,15 @@ public class App : Application var mainVm = Services.GetRequiredService(); WireCallbacks(mainVm); + + // DI-Singletons werden erst beim ersten Auflösen erzeugt. Ohne dieses explizite + // Auflösen entstand der Timer des optionalen WebUntis-Abgleichs erst, wenn die + // Einstellungen geöffnet oder ein manueller Abruf gestartet wurde. Den Dienst beim + // Anwendungsstart aktivieren und wie den Jahresplan sofort einmal abgleichen; danach + // übernimmt sein stündlicher Timer. + if (Services.GetService() is { } untisSync) + _ = untisSync.PollAsync(); + var main = new MainWindow { DataContext = mainVm }; main.EnableWindowSizePersistence(Services.GetRequiredService()); if (Services.GetService() is { } syncEngine)