asp.net-core - 尝试在 OWIN Web API Windows 服务 (.NET 5.0) 中实现 DI
问题描述
好的,所以我的服务使用 Topshelf 来创建 Windows 服务。我遇到的真正问题是如何设置我的 DI(目前是 Autofac,但我可以使用另一个库),以便我可以在设置服务之前使用它。
所以..为了简化事情......我有一个ApplicationService
,需要一个ILogger
,和一个IDataStore
。is的具体类型,ILogger
is的ConsoleLogger
具体类型。还使用一个:IDataStore
SqlServerDataStore
SqlServerDataStore
ILogger
new ApplicationService(
new ConsoleLogger(),
new SqlServerDataStore(
new ConsoleLogger()))
所以当服务启动时,我需要在启动 WebApi之前设置几个线程WebHostBuilder
。这些线程还需要诸如ILogger
等类型,因此它们需要访问 DI。
我有一个绝对的魔鬼时间来弄清楚如何做到这一点。我需要在一个地方设置 DI 注册和类型映射,这样我就可以在任何地方使用它。
如果可能的话,我是新手,需要细节。
提前感谢您的任何指导。
解决方案
推荐阅读
- python - Python Selenium Chrome:打开一个新标签 Ctrl + t(按键盘)
- python - 在 for 循环中启动线程会产生多个结果
- postgresql - SQL 在最大日期左连接
- office365 - office365 图形 api 分配私有组的所有者权限
- java - 一个对象引用一个具有另一个类 B 的对象作为其实例变量的类 A 的对象,是否也指向类型 B 的对象?
- python - 使用 Pandas to_html 时如何设置字符集?
- java - 为什么 count 变量必须在 for 循环的大括号外定义?
- c# - 如何在静态类中使用泛型
- android - 我收到一条错误消息:“无法解析对‘System.Drawing.Color’的引用(在程序集‘Acr.UserDialogs.Interface’中定义’”
- javascript - 文件阅读器第一次没有加载 - VUE.JS