改变.net core wep api中appsettings文件中的连接字符串参数



我是新的。net核心,我正试图使一个方法,可以添加新的连接字符串到应用程序设置。Json文件,我们想要实现的项目每个客户端都有不同的数据库所有数据库都有相同的设计

我的连接部分在应用程序设置。Json看起来像这样

"AllowedHosts": "*",
"ConnectionStrings": {
"ConnStr": "Data Source=.;Initial Catalog=S_Center;User ID=sa;Password=zsa"
},

,我想让这个方法添加新的连接字符串

[HttpPost]
[Route("SetConnection")]
public async Task<IActionResult> SetConnection(string server , string databaseName , string user , password)
{
///what should I do here
}

我以前在。net中这样做过,它是这样的


[HttpPost]
[Route("SetConnection")]
public async Task<IActionResult> SetConnection(string server , string databaseName , string user , password)
{
string str = "server=" + server + ";database=" + databaseName + "; User ID=" + user + "; Password=" + password + "";
Configuration myConfiguration = WebConfigurationManager.OpenWebConfiguration("~");
str = WebConfigurationManager.AppSettings["myKey"];
myConfiguration.Save();
System.Configuration.Configuration Config1 = WebConfigurationManager.OpenWebConfiguration("~");
ConnectionStringsSection conSetting = (ConnectionStringsSection)Config1.GetSection("connectionStrings");
ConnectionStringSettings StringSettings = new ConnectionStringSettings("GConnection", "Data Source=" + A + ",1433;Initial Catalog=" + B + ";Integrated Security=False;User Id=" + C + ";password=" + D + "", "System.Data.SqlClient");
conSetting.ConnectionStrings.Remove(StringSettings);
conSetting.ConnectionStrings.Add(StringSettings);
Config1.Save(ConfigurationSaveMode.Modified);
return ok();
}
````````````

在ConfigureServices方法中使用IServiceCollection的ImplementationFactory过载可能是您的答案。请看看这个。

最新更新