c# 自定义应用程序配置文件(app.config)
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文件的读写, 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”); } |
c# 自定义应用程序配置文件(app.config)相关推荐
- 类项目中的配置文件app.config在打包安装后的信息获取的问题
在一个项目中碰到这样的一个问题,做一个WORD插件,功能在类库项目中实现了,配置信息存在类库项目的配置文件app.config中,在进行打包后,获取的配置文件中的DocType节点信息时,使用以下方法 ...
- C#中怎样获取默认配置文件App.config中配置的键值对内容
场景 在新建一个程序后,项目中会有一个默认配置文件App.config 一般会将一些配置文件信息,比如连接数据库的字符串等信息存在此配置文件中. 怎样在代码中获取自己配置的键值对信息. 注: 博客主页 ...
- 一步一步教你玩转.NET Framework的配置文件app.config (转载)
一步一步教你玩转.NET Framework的配置文件app.config 在一般的项目中,为了使你的代码更加灵活,更方便调整,减少不必要的hard code,我们都在config中添加许多配置信息, ...
- 自定义应用程序配置文件(app.config)
1. 配置文件概述: 应用程序配置文件是标准的 XML 文件,XML 标记和属性是区分大小写的.它是可以按需要更改的,开发人员可以使用配置文件来更改设置,而不必重编译应用程序.配置文件的 ...
- winform程序读取和改写配置文件App.config元素的值
在开发Web项目的时候,会有一个配置文件Web.config,用来存放一些全局的变量,如连接数据库用的字符串.相应的,在开发winform程序时,也有一个配置文件,它就是App.config,这个文件 ...
- (原)举例说明C#自定义配置文件app.config及如何读取配置内容(在app.config加入自定义的XML节点)?...
App.config文件如下: <?xml version="1.0" encoding="utf-8" ?> <configuration& ...
- 配置文件app.config
无论对于客户端程序还是web应用程序,配置文件的作用不言而喻,现总结用法如下: 1. 创建配置节类 必须创建继承自ConfigurationSection的对象才能进行配置数据读写操作,Configu ...
- C#读取配置文件app.config
应用程序配置文件是标准的 XML 文件,XML 标记和属性是区分大小写的.它是可以按需要更改的,开发人员可以使用配置文件来更改设置,而不必重编译应用程序. 配置文件的根节点是configuration ...
- C# 对WinForm应用程序的App.config的使用及加密
原文地址:http://blog.163.com/zhou_zzq/blog/static/1019622120137621739874/ 我们在写C#应用程序时,在工程文件中放置一个app.conf ...
最新文章
- linux 下 设置 MySQL8 表名大小写不敏感方法,解决设置后无法启动 MySQL 服务的问题
- 服务器文件储存,文件储存服务器
- java sessionstate_在Java Web开发中自定义Session
- pytorch简单代码实现deep dream图(即CNN特征可视化 features visualization)
- linux重定向:21
- Python学习Day12
- Windows程序开发——指挥官夏尔对于Windows程序开发框架的选择
- ZooKeeper学习专题之四:示例 实时更新server列表
- kernelchina.org内核研究
- 双目视觉焦距_双目视觉成像原理
- php 图片外链限制,如何解决新浪微博图床限制图片外链的问题 | 骤雨打新荷
- 微信开发工具-命令行的使用
- 2020总结——人生如逆旅,我亦是行人
- 第3章 结构之法——电话号码对应英语单词
- php的坑,PHP中的这容易被踩的坑,新人必看
- 15.4 MPLS 控制层面 PE和CE设备间的路由更新
- 联想微型计算机如何设置u盘启动,联想电脑如何设置U盘启动?联想电脑bios设置U盘启动教程...
- filebeat7.7.0相关详细配置预览- Paths
- 为带你搞懂RPC,手写了RPC框架
- 论坛介绍 | COSCon'22 物联网(IoT)
热门文章
- 001. Ansible简介
- JS中的正则表达式小小的技巧---TEST方法的使用
- [jQuery] jQuery函数
- [Buzz.Today]2013.03.14
- 对cookie和子cookie操作的封装
- Ajax Extensions核心控件介绍
- java 存储空间_Java中的存储空间类型
- faker和劫的图片_faker亲手画的劫被曝光,看到他的画,众人心里久久不能平息!...
- 服务器宕机自动dns,有哪些同时支持智能解析和宕机自动切换的DNS服务?
- php面试编程题_PHP程序员面试题(经典汇总,mysql为主)