如何解决将凭据从代码添加到连接字符串
我有一个使用用户名和密码的连接字符串。但是,凭据存储为环境变量(我正在使用OpenShift),因此我想在运行时从代码中添加凭据(用户名和密码)。
虽然我可以使用reg-ex或其他一些创意来实现此目的,但是C#似乎默认支持该功能。我发现this answer in another post,建议使用EntityConnectionStringBuilder
,但这仅适用于.NET Framework(我使用的是.NET Core 3.1)。 .NET Core是否有类似功能(甚至更智能)?
我也正在使用Entity Framework Core,因此修改连接本身(而不是连接字符串)的任何事情都不是真正的选择。
解决方法
正如@CodeCaster在评论中提到的-答案是SqlConnectionStringBuilder。它允许向现有的连接字符串中添加诸如User ID
之类的部分。因此,要将用户名和密码添加到appsettings.json
的连接字符串中,您可以执行以下操作:
string baseConnStr = Configuration.GetConnectionString("MyConnectionString");
var builder = new SqlConnectionStringBuilder(baseConnStr);
builder.UserID = "Test";
builder.Password = "Abc123";
var connStr = builder.ConnectionString
,
如果您有权访问配置文件,则可能会发生这种情况
<connectionStrings>
<add name="Connection" connectionString="Url=https://smth.com; Username=Username; Password=Password" />
</connectionStrings>
您只需要访问连接名称
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。