gpt4 book ai didi

c# - .net core - 数据库 url 解析器

转载 作者:行者123 更新时间:2023-11-29 11:58:43 25 4
gpt4 key购买 nike

我正在 Heroku 上部署我的 .net 核心应用程序。 Heroku 提供以下格式的数据库 url:

[database type]://[username]:[password]@[host]:[port]/[database name]

EF 期望连接字符串的格式为:

host=[host];user id=[username];password=[password];database=[database name];pooling=true;

是否有任何解析器可用于转换,或者我必须自己编写相同的逻辑。

最佳答案

简单的 url 解析有效:

Uri url;
bool isUrl = Uri.TryCreate("postgres://1user:1password@dbserver.com:4568/testdb", UriKind.Absolute, out url);
if(isUrl) {
Console.WriteLine("Host: "+url.Host);
Console.WriteLine("Port: "+ url.Port);
Console.WriteLine("Database: "+ url.LocalPath.Substring(1));
Console.WriteLine("Username: "+ url.UserInfo.Split(':')[0]);
Console.WriteLine("Password: "+ url.UserInfo.Split(':')[1]);
var connectionUrl = $"host={url.Host};username={url.UserInfo.Split(':')[0]};password={url.UserInfo.Split(':')[1]};database={url.LocalPath.Substring(1)};pooling=true;";
Console.WriteLine(connectionUrl);
}

关于c# - .net core - 数据库 url 解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45907900/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com