我安装了HangFire软件包,并在Startup.cs中进行了一些更改 构建代码后,出现以下错误:“ dotnet意外退出”。
Startup.cs
public void ConfigureServices (IServiceCollection services) {
services.AddHangfire(configuration=>{
configuration.UseSqlServerStorage("ConnectionStrings:DefaultConnection");
});
services.AddMvc();
// Add framework services.
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure (IApplicationBuilder app, IHostingEnvironment env) {
app.UseHangfireServer();
app.UseHangfireDashboard();
}
问题在Configure()中有2行。
app.UseHangfireServer()和app.UseHangfireDashboard();
当我删除这两个时,它运行正常。
我尝试过: 删除nuget缓存并还原。 在终端和项目中检查了dotnet --version,它们都相同(2.2.106)
更新: 我修复了我无法构建代码的部分。问题是我使用的是UseSqlServerStorage而不是UsePostgreSqlServerStorage。
我现在有另一个问题:我无法访问仪表板。 http://localhost:5000/hangfire页不存在。
答案 0 :(得分:2)
初始化Hangfire时似乎出现错误,导致应用程序启动崩溃。这可能是由于连接字符串不正确,数据库不可访问或数据库系统不兼容所致。在配置Hangfire以使用SQL Server时,您似乎正在使用PostgreSQL。
您可能想研究一下包含PostgreSQL的Hangfire实现的软件包:https://www.nuget.org/packages/Hangfire.PostgreSql/。
答案 1 :(得分:0)
由于我错过了第二个数据库的连接字符串而得到了相同的错误