我正在寻找从外部应用程序连接到Heroku Postgres数据库的最佳方法。该应用程序使用asp.net开发。我试图使用NpgSQL,但是遇到了证书未知的错误。是否有人做过这个?您有什么建议吗?
我使用这个方法来将DATABASE_URL转换为连接字符串
var databaseUrl = Environment.GetEnvironmentVariable("DATABASE_URL");
var databaseUri = new Uri(databaseUrl);
var userInfo = databaseUri.UserInfo.Split(':');
var builder = new NpgsqlConnectionStringBuilder
{
Host = databaseUri.Host,
Port = databaseUri.Port,
Username = userInfo[0],
Password = userInfo[1],
Database = databaseUri.LocalPath.TrimStart('/')
};
return builder.ToString();
SslMode = SslMode.Require, TrustServerCertificate = true
- ibrahimozgon我正在使用以下连接字符串连接到Heroku Postgres数据库:
string connString = "User ID=<user>;Password=<pass>;Host=<host>;Port=<port>;Database=<database>;Pooling=true;Use SSL Stream=True;SSL Mode=Require;TrustServerCertificate=True;"
其中 <user>, <pass>, <host>, <port> 和 <database>
是来自 Heroku Postgres 应用设置的值。端口默认为 5432。
然后使用 NpgSql 创建 NpgsqlConnection 实例:
var conn = new NpgsqlConnection(connString);