Onderwerp

Thema Generic Host en applicatiearchitectuur

Een thema over de architectuur van .NET-applicaties waarin u Generic Host, BackgroundService, DI, configuratie, logging en het ontwerp van opstarten en afsluiten samen kunt volgen.

Waar dit thema voor bedoeld is

Zodra een .NET-applicatie wat groter wordt, raken Main, Program.cs, de initialisatie van formulieren, permanent draaiende verwerking, het laden van configuratie en het initialiseren van logging verspreid. Dit thema is bedoeld om het ontwerp van het opstarten en afsluiten van de hele applicatie met Generic Host als uitgangspunt samen op één plek te kunnen volgen.

  • Waar DI, configuratie en logging worden gekoppeld
  • Wie de levensduur van BackgroundService en andere permanent draaiende verwerking beheert
  • Hoe u omgaat met graceful shutdown en een flush bij het stoppen
  • Hoe u de verwerking buiten de UI ordent

Vraagstukken die vaak in adviesgesprekken ter sprake komen

  • Task.Run en timers zijn overal te vinden en het is onduidelijk wie verantwoordelijk is voor het stoppen
  • Het is onduidelijk hoe ver u Host.CreateApplicationBuilder en BackgroundService moet doorvoeren
  • U wilt ordenen hoe u voor console-, worker- en desktopapplicaties dezelfde basis neerzet
  • Configuratie, logging en DI zijn achteraf stukje bij beetje toegevoegd en nu lastig te beheren

Een geschikte aanpak

Bij Generic Host helpt het weinig om alleen API-namen te onthouden. Het is overzichtelijker om opstarten, levensduur en verdeling van verantwoordelijkheden samen te bekijken. Als u de drie verwante artikelen als ingang neemt en daarnaast de pagina’s over Windows-applicatieontwikkeling en ontwerpreview bekijkt, krijgt u een helder beeld van hoe ver Host in uw applicatie moet reiken.

Vraag ons om advies

Heeft u een vraagstuk dat aansluit bij de inhoud van deze pagina? Bespreek het dan met ons en laat ons weten wat de huidige context is en welke ondersteuning u nodig hebt.

Terug naar home