我试图用下面的方法在运行时节省每用户基础上的app.config
连接字符串:保存的ConnectionString在App.config中
public void saveConnectionString(string serverName, string conn)
{
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
var connectionString = config.ConnectionStrings.ConnectionStrings[serverName];
config.ConnectionStrings.SectionInformation.AllowExeDefinition = ConfigurationAllowExeDefinition.MachineToLocalUser;
if (connectionString == null)
{
config.ConnectionStrings.ConnectionStrings.Add(new ConnectionStringSettings
{
Name = serverName,
ConnectionString = conn,
ProviderName = "System.Data.SqlClient"
});
config.Save(ConfigurationSaveMode.Modified);
}
else
{
connectionString.ConnectionString = conn;
}
}
我得到一个异常:
ConfigurationSection属性锁定时无法编辑。
当我试图获得ConfigurationAllowExeDefinition
。有没有一种方法可以创建我自己的部分?
请发布例外和错误,我们不介意读者.... – TheLethalCoder
是否有可能在运行时更改配置?这将需要至少重新启动Web应用程序?没有? –
我已经添加了异常消息和它的一个winform应用程序,而不是一个web应用程序。 –