主题

Generic Host / 应用程序设计主题

可一并浏览 Generic Host、BackgroundService、DI、配置、日志以及启动与停止设计的 .NET 应用程序设计主题。

这个主题想要梳理的内容

.NET 应用程序稍微成长一些之后,MainProgram.cs、窗体初始化、常驻处理、配置读取、日志初始化就会散落各处。 这个主题是一个入口,用来以 Generic Host 为轴心,一并梳理 如何设计整个应用程序的启动和停止

  • DI、配置、日志在哪里串联起来
  • BackgroundService 和常驻处理的生命周期由谁持有
  • 如何处理 graceful shutdown 和停止时的 flush
  • 如何整理 UI 之外的处理

咨询中常见的论点

  • Task.Run 和计时器到处冒出来,停止的职责不清晰
  • 不知道 Host.CreateApplicationBuilderBackgroundService 应该引入到什么程度
  • 想梳理控制台、worker、桌面应用程序如何统一底层结构
  • 配置、日志、DI 的连接是事后一点点补上去的,维护起来很痛苦

适合的推进方式

关于 Generic Host,只记住 API 名称效果有限,把启动、生命周期、职责划分放在一起看 会更容易梳理。 以相关的 3 篇文章为入口,再结合 Windows 应用程序开发和设计评审页面一起看,就能看清应该把 host 引入到什么程度。

联系我们

如果您遇到的问题与本页内容相近,欢迎附上当前状况和所需支持的形式与我们联系。

返回首页