我的问题很可能看起来有点琐碎,但我卡住了...
有很多关于如何在控制台应用程序中配置托管Web API的信息,但这不是我要找的。
我正在迁移旧的.NET Framework 4.8控制台应用程序,该应用程序作为Windows服务运行,并根据配置可以托管API端点,以访问内存中的信息,用于调试和监控目的。我正在将其迁移到.NET 6。
为了托管API,它使用Microsoft.AspNet.WebApi.SelfHost
包中的HttpSelfHostServer
类。在.NET 6中不再有这样的包。运行API的整个概念发生了变化,据我所知,根本没有这样的混合类型的应用程序。您可以构建控制台应用程序或Web API。
我遇到的问题是根据应用程序设置正确配置和运行API托管。它可以被禁用或启用。如果启用,API应该共享用于主服务应用程序的DI容器。
有没有人试图做这样的事情?任何想法或建议,在哪里寻找如何正确地做将不胜感激。
1条答案
按热度按时间yi0zb3m41#
我试了如下,这是你想要的:
Program.cs:
服务:
辅助进程(从默认Windows服务项目复制)
控制器:从默认webapi项目中占用
结果: