1.向项目添加app.config文件:
右击项目名称,选择“添加”→“添加新建项”,在出现的“添加新项”对话框中,选择“添加应用程序配置文件”;如果项目以前没有配置文件,则默认的文件名称为“app.config”,单击“确定”。出现在设计器视图中的app.config文件为:
<?xmlversion="1.0"encoding="utf-8" ?>
<configuration>
</configuration>
在项目进行编译后,在bin/Debuge文件下,将出现两个配置文件(以本项目为例),一个名为“JxcManagement.EXE.config”,另一个名为“JxcManagement.vshost.exe.config”。第一个文件为项目实际使用的配置文件,在程序运行中所做的更改都将被保存于此;第二个文件为原代码“app.config”的同步文件,在程序运行中不会发生更改。
2. connectionStrings配置节:
请注意:如果您的SQL版本为2005 Express版,则默认安装时SQL服务器实例名为localhost/SQLExpress,须更改以下实例中“Data Source=localhost;”一句为“Data Source=localhost/SQLExpress;”,在等于号的两边不要加上空格。
<!--数据库连接串-->
<connectionStrings>
<clear />
<addname="conJxcBook"
connectionString="Data Source=localhost;Initial Catalog=jxcbook;User ID=sa;password=********"
providerName="System.Data.SqlClient" />
</connectionStrings>
3. appSettings配置节:
appSettings配置节为整个程序的配置,如果是对当前用户的配置,请使用userSettings配置节,其格式与以下配置书写要求一样。
<!--进销存管理系统初始化需要的参数-->
<appSettings>
<clear />
<addkey="userName"value="" />
<addkey="password"value="" />
<addkey="Department"value="" />
<addkey="returnValue"value="" />
<addkey="pwdPattern"value="" />
<addkey="userPattern"value="" />
</appSettings>
4.读取与更新app.config
对于app.config文件的读写,参照了网络文章:http://www.codeproject.com/csharp/ SystemConfiguration.asp标题为“Read/Write App.Config File with .NET 2.0”一文。
请注意:要使用以下的代码访问app.config文件,除添加引用System.Configuration外,还必须在项目添加对System.Configuration.dll的引用。
4.1读取connectionStrings配置节
///<summary>
///依据连接串名字connectionName返回数据连接字符串
///</summary>
///<param name="connectionName"></param>
///<returns></returns>
private static string GetConnectionStringsConfig(string connectionName)
{
string connectionString =
ConfigurationManager.ConnectionStrings[connectionName].ConnectionString.ToString();
Console.WriteLine(connectionString);
return connectionString;
}
4.2更新connectionStrings配置节
///<summary>
///更新连接字符串
///</summary>
///<param name="newName">连接字符串名称</param>
///<param name="newConString">连接字符串内容</param>
///<param name="newProviderName">数据提供程序名称</param>
private static void UpdateConnectionStringsConfig(string newName,
string newConString,
string newProviderName)
{
bool isModified = false; //记录该连接串是否已经存在
//如果要更改的连接串已经存在
if (ConfigurationManager.ConnectionStrings[newName] != null)
{
isModified = true;
}
//新建一个连接字符串实例
ConnectionStringSettings mySettings =
new ConnectionStringSettings(newName, newConString, newProviderName);
//打开可执行的配置文件*.exe.config
Configuration config =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
//如果连接串已存在,首先删除它
if (isModified)
{
config.ConnectionStrings.ConnectionStrings.Remove(newName);
}
//将新的连接串添加到配置文件中.
config.ConnectionStrings.ConnectionStrings.Add(mySettings);
//保存对配置文件所作的更改
config.Save(ConfigurationSaveMode.Modified);
//强制重新载入配置文件的ConnectionStrings配置节
ConfigurationManager.RefreshSection("ConnectionStrings");
}
4.3读取appStrings配置节
///<summary>
///返回*.exe.config文件中appSettings配置节的value项
///</summary>
///<param name="strKey"></param>
///<returns></returns>
private static string GetAppConfig(string strKey)
{
foreach (string key in ConfigurationManager.AppSettings)
{
if (key == strKey)
{
return ConfigurationManager.AppSettings[strKey];
}
}
return null;
}
4.4更新connectionStrings配置节
///<summary>
///在*.exe.config文件中appSettings配置节增加一对键、值对
///</summary>
///<param name="newKey"></param>
///<param name="newValue"></param>
private static void UpdateAppConfig(string newKey, string newValue)
{
bool isModified = false;
foreach (string key in ConfigurationManager.AppSettings)
{
if(key==newKey)
{
isModified = true;
}
}
// Open App.Config of executable
Configuration config =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
// You need to remove the old settings object before you can replace it
if (isModified)
{
config.AppSettings.Settings.Remove(newKey);
}
// Add an Application Setting.
config.AppSettings.Settings.Add(newKey,newValue);
// Save the changes in App.config file.
config.Save(ConfigurationSaveMode.Modified);
// Force a reload of a changed section.
ConfigurationManager.RefreshSection("appSettings");
}
/// <summary>
///写入Key,Value到XML文件
/// </summary>
/// <param name="Key"></param>
/// <param name="Value"></param>
public static void SaveConfig(string Key,string Value)
{
XmlDocument doc = new XmlDocument();
//获得配置文件的全路径
string strFileName = AppDomain.CurrentDomain.BaseDirectory.ToString() + "App.config";
doc.Load(strFileName);
//找出名称为“add”的所有元素
XmlNodeList nodes = doc.GetElementsByTagName("add");
for (int i = 0; i < nodes.Count; i++)
{
//获得将当前元素的key属性
XmlAttribute att = nodes[i].Attributes["key"];
//根据元素的第一个属性来判断当前的元素是不是目标元素
if (att.Value == Key)
{
//对目标元素中的第二个属性赋值
att = nodes[i].Attributes["value"];
att.Value = Value;
break;
}
}
//保存上面的修改
doc.Save(strFileName);
}
分享到:
相关推荐
地址:http://download.csdn.net/detail/cleopard/5636223 第二卷:C#开发实战1200例.z02 地址:http://download.csdn.net/detail/cleopard/5638549 由于上传限制,压缩包分成3卷 解压时需要分别把三个部分下载...
使用c#语言编写的winform程序,实现顺序表、单链表、顺序栈、冒泡排序、折半查找 源代码和程序展示: 顺序表:https://blog.csdn.net/HAIIAKU/article/details/119302855 单链表:...
App.config是C#开发WinForm程序的配置文件,开发Web程序的配置文件叫Web.config。本文介绍App.config的简介使用。 我们先来打开一个App.config文件,看看它的内容像什么样子。 <?xml version=1.0 encoding=utf-8...
C#遍历treeview节点,以及对应名字文件的内容获取 Q692791问题的回答,https://ask.csdn.net/questions/692791
https://download.csdn.net/download/p_xiaojia/9756173
地址:http://download.csdn.net/detail/cleopard/5636223 这是第二卷 第三卷:马上传 由于上传限制,压缩包分成3卷 解压时需要分别把三个部分下载下来 不要更改文件名,放到同一个文件夹内 这样才能正确解压!...
支持平台:Visual Studio 6.0/2002/2003/2005/2008/2010,C++ Builder 6.0/2009/2010,Delphi 7/2009,Visual Basic 6.0/2008 支持脚本:JavaScript,VBScript 支持服务器:Windows NT,Windows 2003,Windows XP,...
可用于Oracle、SqlServer、Sybase、DB2、MySQL、Access、SQLite、PostgreSQL、DM(达梦)、PowerDesigner文件、Informix、Firebird、MaxDB、Excel等和OleDb、ODBC连接的数据库并可自定义,详见文档及安装文件的示例和...
C#100个编程实例程序 http://download.csdn.net/detail/cleopard/5888641 如何学好Iphone开发 20天搞定iPhone软件开发 http://download.csdn.net/detail/cleopard/5798391 Android愤怒的小鸟高仿源码...
修改数据库链接文件Web.config里面的信息为你的链接信息。 @或直接从这里寻找@ http://download.csdn.net/user/cleopard/album @更多@ http://cleopard.download.csdn.net/ 福利 http://xuemeilaile.com 17份...
应用程序配置文件,对于asp.net是 web.config,对于WINFORM程序是 App.Config(ExeName.exe.config)。
本品为c#入门小实例,合初学的口味错,希望大家找出错误。 记的顶啊。 源码: http://download.csdn.net/source/1158527
c#写的OPC Client源码,VS2005工程文件,是完整的项目文件,不是网页版。 ///摘要 ///程式使用C#.NET 2005 编写 ///引用类库OPCDAAuto.dll ///OPCServer采用KEPWare ///在windows xp sp2、sp3、windows 2003上测试...
共5个分卷 ASP.NET程序开发范例宝典(C#...http://download.csdn.net/source/3094999 ASP.NET程序开发范例宝典(C#)(第2版).part2 http://download.csdn.net/source/3095005 ASP.NET程序开发范例宝典(C#)(第2版).part3 ...
此书共5个分卷 ASP.NET程序开发范例...http://download.csdn.net/source/3094999 ASP.NET程序开发范例宝典(C#)(第2版).part2 http://download.csdn.net/source/3095005 ASP.NET程序开发范例宝典(C#)(第2版).part3 ...
此书共5个分卷 ASP.NET程序开发范例...http://download.csdn.net/source/3094999 ASP.NET程序开发范例宝典(C#)(第2版).part2 http://download.csdn.net/source/3095005 ASP.NET程序开发范例宝典(C#)(第2版).part3 ...
此书共5个分卷 ASP.NET程序开发范例...http://download.csdn.net/source/3094999 ASP.NET程序开发范例宝典(C#)(第2版).part2 http://download.csdn.net/source/3095005 ASP.NET程序开发范例宝典(C#)(第2版).part3 ...
此书共5个分卷 ASP.NET程序开发范例...http://download.csdn.net/source/3094999 ASP.NET程序开发范例宝典(C#)(第2版).part2 http://download.csdn.net/source/3095005 ASP.NET程序开发范例宝典(C#)(第2版).part3 ...
C# 读取DXF全套实例 图形输出 控制台输出 dxf全部信息 FILE NAME: sample.dxf binary DXF: False loading time: 0.447 seconds FILE VERSION: AutoCad2010 FILE COMMENTS: 0 FILE TIME: drawing created (UTC)...
C#2008数据库入门经典(第4版).part1 http://download.csdn.net/source/3008555 C#2008数据库入门经典(第4版).part2 http://download.csdn.net/source/3008570 C#2008数据库入门经典(第4版).part3 ...