Postgres配置:
Configuration["AppSettings:DBProvider"] == "PGSQL")
services.AddDbContext<AppDbContext>(opt =>
opt.UseNpgsql(Configuration.GetConnectionString("connstring"),
b => b.MigrationsAssembly("migration_assembly_path")));
除一件事外,一切正常。当我尝试使用时:
context.Database.GetDbConnection().ConnectionString
它返回异常“不支持关键字:'用户名'。”但我什至在连接字符串中都没有用户名,但是上下文会生成如下的conn字符串:
"Username=myusername;Host=localhost;Port=5432;Database=mydbname;Pooling=True"
值很好,除了应该使用USER ID而不是Username。为什么会这样生成?复制连接字符串时,出现相同的错误,但使用“主机”而不是“用户名”。