Visual C# 2005 - 如何利用程序代码动态存取设定文件
一般而言,常用的设定文件可分为应用程序设定文件以及应用程序组态文件两种。应用程序设定文件用来动态储存或撷取应用程序的属性设定与其它自订信息,让维护客户端计算机上的应用程序选项和使用者偏好设定变的很容易。而应用程序组态文件储存在应用程序项目的组态文件 app.config 中,通常包含应用程序特有的设定值,例如:应用程序组件系结、密码编译设定与启始设定。
Visual C# 本身并没有提供类似 Visual Basic 中的 My.Setting 类别对象来存取储存或撷取设定档内容,因而在此我们将示范如何透过程序代码存取两种不同的设定档内容。
程序范例 1
图表 1
首先,如图表 1 所示,我们已经将连接字符串储存成一个应用程序设定。现在,我们可以在程序中使用 CH4.Properties.Settings 类别对象来取得此应用程序设定以便连接至数据库。程序范例 CH4_DemoForm003.cs 示范如何完成此项作业,兹将程序代码列示如下:
using CH4.Properties;
...
Settings MySettings = new Settings();
using (SqlConnection cn = new SqlConnection(MySettings.LocalSQLExpressChtNorthwind))
{
cn.Open();
...
}
程序范例 2
接下来,先将连接字符串应用程序设定储存在应用程序项目的组态文件 app.config 中,并内含于一对 … 标记内。以我们先前曾经实际建立过的连接字符串应用程序设定 LocalSQLExpressChtNorthwind 而言,将会在组态档 app.config 中写入下列信息:
connectionString="Data Source=(local)SQLExpress;Initial
Catalog=北风贸易;Integrated Security=True"
/>
事实上,不论一个连接字符串是利用应用程序设定所建立亦或是自行编写者,都可以使用 System.Configuration 命名空间中的类别来加以处理并取用之。程序范例 CH4_DemoForm004.cs 刻意以 System.Configuration 命名空间中的 ConnectionStringSettings 与 ConfigurationManager 类别来取得连接字符串应用程序设定,而不使用 CH4.Properties.Settings 类别,兹将程序代码列示如下:(注意:您的 Windows 应用程序项目必须加入对 System.Configuration.dll 的参考)
using System.Configuration;
...
ConnectionStringSettings settings =
ConfigurationManager.ConnectionStrings[
"CH4.Properties.Settings.LocalSQLExpressChtNorthwind"];
if (settings != null)
{
using (SqlConnection cn = new SqlConnection(settings.ConnectionString))
{
cn.Open();
...
}
}
章立民研究室敬上
期待更多精彩,敬请关注: