Sql server Hangfire没有';无法在IIS中创建表
我已经使用本指南在我的ASP.Core2.2项目中安装了Hangfire 当我删除我的Sql server Hangfire没有';无法在IIS中创建表,sql-server,asp.net-core,hangfire,Sql Server,Asp.net Core,Hangfire,我已经使用本指南在我的ASP.Core2.2项目中安装了Hangfire 当我删除我的MyProject\u devMSSQL db并运行Update Database时,只会创建我的自定义表。运行项目后,将添加Hangfire表 在appsettings.production.json中,我已将数据库配置为MyProject\u prod,并单击文件夹发布和选中的实体框架迁移,以便构建过程可以在EFSQLScripts文件夹中创建一个.sql文件,其中包含我需要应用于MyProject\u p
MyProject\u dev
MSSQL db并运行Update Database
时,只会创建我的自定义表。运行项目后,将添加Hangfire表
在appsettings.production.json
中,我已将数据库配置为MyProject\u prod
,并单击文件夹发布和选中的实体框架迁移,以便构建过程可以在EFSQLScripts
文件夹中创建一个.sql文件,其中包含我需要应用于MyProject\u prod
数据库的sql
问题是.sql文件只包含我的自定义表。当我运行IIS站点时,不会在MyProject\u prod
db中创建Hangfire表,而当我在本地运行带有F5的项目时,如果它们不存在,则会在MyProject\u dev
中创建它们。查看日志,我发现连接到了MyProject\u prod
db,错误是:
[ERR] Execution BackgroundServerProcess is still in the Failed state for 00:20:45.1406056 due to an exception, will be retried no more than in 00:00:15
System.Data.SqlClient.SqlException (0x80131904): Invalid object name 'HangFire.Server'.
我可以从我的
MyProject\u dev
db导出表,然后将它们导入MyProject\u prod
db,但我认为这不是正确的方法。为什么应用程序在IIS下运行时不创建表 尝试在生产环境中手动创建数据库,而不添加任何表。在配置中,将其指向新创建的db。这可能是hangfire bot有权生成和创建数据库的问题。请尝试在生产环境中手动创建数据库,而不添加任何表。在配置中,将其指向新创建的db。这可能是hangfire bot有权构建和创建数据库的问题。也相关:也相关: