我有这个app.config:
<?xml version="1.0"?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<add name="conexx" connectionString="Data Source=192.168.1.2 ;Initial Catalog =ifdcontroladoria3 ;uid =sa;pwd = admin2012" providerName="System.Data.SqlClient" />
</connectionStrings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client"/></startup></configuration>
我试图用这个C#更新这个连接字符串:
coneydstr = @"Data Source=" + comboBox1.Text + ";Initial Catalog =" + cmbBancos.Text + ";uid =" + txtUsuario.Text + ";pwd =" + txtPassword.Text;
try
{ coneyd.ConnectionString = coneydstr;
coneyd.Open();
funciona = true;
lblStringSalida.Text = coneydstr;
}
catch (Exception ex)
{ MessageBox.Show(coneyd + ex.Message.ToString()); }
if (funciona)
{
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.ConnectionStrings.ConnectionStrings["conexx"].ConnectionString = coneydstr;
config.Save();
}
但未进行更新,
using System.Configuration;
是在标题和引用中,出了什么问题?????
我写错了问题,我想在某个地方存储连接字符串app.config或其他文件,并在另一个安装中更改字符串,或者当服务器或用户更改时。这样做的正确方法是什么?
答案 0 :(得分:5)
嗯,您的问题很可能是您正在查看错误的文件。查看调试器中的config.FilePath
属性 - 它会告诉您完全您在此处和现在正在处理的文件。
在Visual Studio中运行此代码时,您的代码将更改Yourapplication.exe.config
目录中的project\bin\debug
- 它将 NOT 更改项目目录中的app.config
!
因此,当您运行代码时 - 在config.Save()
之后,查看项目的\bin\debug
目录及其中的配置文件 - 这些值是否已正确更新?