C# · 12月 28, 2021

VS中C#读取app.config数据库配置字符串的三种方法

关于VS2008或VS2005中数据库配置字符串的三种取法
VS2008建立Form程序时,如果添加数据源会在配置文件 app.config中自动写入连接字符串,这个字符串将会在你利用DataSet,sqlDataAparter,sqlConnection等控件时如影随行地提示你让去选择,或者是新建字符串。如果要用代码的方式取得这个字符串则有三种方式:

app.config内容:

<?xml version=”1.0″ encoding=”utf-8″ ?><configuration> <configSections> </configSections><appSettings> <add key=”connectionstring” value=”Data Source=你的数据库器(本机可用LocalHost,如果是EXPRESS开发版则必须是.\sqlEXPRESS);Initial Catalog=数据库名字;User ID=用户名;Password=你自己的密码 /> <add key=”TemplatePATH” value=”Template” /></appSettings><connectionStrings> <add name=”SxzzManager.Properties.Settings.sxzzConnectionString” connectionString=”Data Source=你的数据库器;Initial Catalog=数据库名字;User ID=sa;Password=你自己的密码” providerName=”System.Data.sqlClient” /> <add name=”TestConnectionString” connectionString=”Data Source=你的数据库器;Initial Catalog=数据库名字;User ID=sa;Password=你自己的密码” providerName=”System.Data.sqlClient” /> </connectionStrings></configuration>

说明:
其中
《1》

<appSettings>
<add key=”connectionstring” value=”Data Source=你的数据库器(本机可用LocalHost,如果是EXPRESS开发版则必须是.\sqlEXPRESS);Initial Catalog=数据库名字;User ID=用户名;Password=你自己的密码 />
<add key=”TemplatePATH” value=”Template” />
</appSettings>

为手工所加。

《2》
<add name=”SxzzManager.Properties.Settings.sxzzConnectionString”
connectionString=”Data Source=你的数据库器;Initial Catalog=数据库名字;User ID=sa;Password=你自己的密码”
providerName=”System.Data.sqlClient” />
为在VS2008中添加数据源时自动生成的内容。

《3》
<add name=”TestConnectionString” connectionString=”Data Source=你的数据库器;Initial Catalog=数据库名字;User ID=sa;Password=你自己的密码”
providerName=”System.Data.sqlClient” />
为手工添加。

要取得《1》中所示的连接字符串用如下语句:

string ConString = System.Configuration.ConfigurationSettings.AppSettings[“connectionstring”];
string ConString = System.Configuration.ConfigurationManager.AppSettings[“connectionstring”];

要取得《2》中所示的连接字符串有两种方法

<1>: string constr = System.Configuration.ConfigurationManager.ConnectionStrings[“SxzzManager.Properties.Settings.sxzzConnectionString”].ToString();
<2>: string constr = SxzzManager.Properties.Settings.Default[“sxzzConnectionString”].ToString();//”其中”sxzzConnectionString”可以在VS2008中菜单=》项目=》属性=》设置=》名称 弹出的对话框中显示。其实就是”SxzzManager.Properties.Settings.sxzzConnectionString”中最后一个点后面的字符串。

要取得《3》中所示的连接字符串则中能用《2》中的一个字符串

string constr = ConfigurationManager.ConnectionStrings[“TestConnectionString”].ToString();
string constr = ConfigurationManager.ConnectionStrings[“TestConnectionString”].ConnectionString;

补充:如果VS不能识别ConfigurationManager类,则需要在引用中添加“System.Configuration”引用即可