【问题标题】:.Net Core 3.0 HTTP Error 500.30 - ANCM In-Process Start Failure When trying to add AddHostedService() in startup class.Net Core 3.0 HTTP 错误 500.30 - 尝试在启动类中添加 AddHostedService() 时 ANCM 进程内启动失败
【发布时间】:2019-11-01 11:03:48
【问题描述】:

我正在使用 .NET Core 3.0 与 VS 2019 一起使用 MVC 应用程序,我需要在我的应用程序中包含 Service Worker

在我的 Startup 类中添加此行后:

@ 987654321@
我收到此错误:



我需要知道我是否可以使用在我的 MVC 应用程序中工作的服务以及如何解决这个问题。

【问题讨论】:

  • 你可以使用像wireshark或fiddler这样的嗅探器来帮助调试。看起来 1)您的 IP 地址/端口错误 2)服务没有在监听(使用服务器上的 cmd.exe >Netstat -a 查看状态或 IP/端口)3)您的端口号被阻止4) 没有从客户端到服务器的路由。

标签: c# .net asp.net-mvc asp.net-core asp.net-core-mvc


【解决方案1】:

可能有很多原因。一些建议(在早期版本的 .NET Core 中编辑)将托管模型从进程内更改为进程外,例如 this known issue。您可以阅读有关托管模型的更多信息here。在你的情况下,它可能是别的东西。

现在有一些来自微软的很好的例子来实现托管服务,例如。 here 和 here。但如何(何时)注册该服务也很重要。

在我的情况下,后台服务使用IServiceProvider depdendency 在其构造函数中注入,这就是为什么我在哪一行注册服务确实很重要 - 可能是由于我没有真正弄清楚的一些内部依赖关系。像这样在 Program.cs 中注册解决了我的问题:

.ConfigureServices(services =>
    {
        services.AddHostedService<YourAwesomeBackgroundService>();
    });

如果您这样做了,您可能可以在 Startup.cs 中的 ConfigureServices 方法中使用注册顺序(基于依赖项),或者尝试删除一些依赖项以找出导致问题的原因。

如果这不能解决您的问题,我建议打开一些日志服务,因为肯定会抛出一些异常。

【讨论】:

    猜你喜欢
    • 2019-08-25
    • 2020-04-09
    • 2020-09-12
    • 2019-05-17
    • 2020-02-14
    • 2020-08-23
    • 2019-06-12
    • 2020-10-11
    • 1970-01-01
    相关资源
    最近更新 更多