关于依赖注入请尽量在 Development 环境进行调试

💡 原文中文,约2700字,阅读约需7分钟。
📝

内容提要

.NET的依赖注入系统在开发环境下会提前校验依赖关系,导致未注册服务时报错,而其他环境则在运行时校验。通过修改环境设置或强制开启校验可避免此问题。

🎯

关键要点

  • 在开发环境下,.NET的依赖注入系统会提前校验依赖关系,导致未注册服务时报错。
  • 其他环境在运行时才会校验依赖关系,因此不会提前报错。
  • 通过修改launchSettings.json中的ASPNETCORE_ENVIRONMENT可以避免开发环境下的依赖校验问题。
  • 在Development环境下,DefaultServiceProviderOptions的ValidateScopes与ValidateOnBuild会被设置为True。
  • 可以通过强制开启依赖关系的校验来在任何环境下都报错。
  • 调试时建议选择在Development环境下进行,或手动强制开启校验。
➡️

继续阅读