【发布时间】:2022-01-11 19:20:05
【问题描述】:
我将 DI 用于 Web API 并像这样注册我的 DbContext 类:
services.AddDbContext<MyDbContext>(
options => options.UseMySql(ServerVersion.AutoDetect(Configuration.GetConnectionString("EntityFramework:MyDbContext:ConnectionStringKey")),
builder => builder.CommandTimeout(1800).EnableRetryOnFailure(5, TimeSpan.FromSeconds(10), null))
);
这是我的项目用户机密:
"EntityFramework": {
"PigDbContext": {
"ConnectionStringKey": "server=pbr-dbs-01:3306;database=pb_db_operational;uid=root;pwd=myPassword;"
}
}
在调试期间,当我调用该方法时,大约 3-5 秒后,当主机尝试初始化 DbContext 类时,我得到一个连接超时异常。内部异常显示“无法连接到任何指定的 mysql 主机”,但是当我使用数据库管理工具时,我可以从我的机器上进行连接。
任何想法是什么导致了这个问题?我已经尝试重新排列连接字符串中的参数,如另一篇关于此错误消息的 SO 帖子中所述。那里的其他人提到了 VPN,但由于我在家工作,我无法禁用我的 VPN,否则我将失去与数据库的连接。
【问题讨论】:
标签: entity-framework-core mariadb .net-6.0