一、C#项目中添加App.config配置文件

  在控制台程序中,默认会有一个App.config配置文件,如果不小心删除掉,或者其他程序需要配置文件,可以通过添加得到。

  添加步骤:右键项目名称,选择“添加”→“添加新建项”,在出现的“添加新项”对话框中,选择“添加应用程序配置文件”,默认的文件名称为“ App.config ”,单击“确定”。

  

二、配置文件格式

  新建以后会得到一个App.config的文件,双击打开,默认如下面XML所示:

 <?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
</configuration>

  可以对其添加节点,我们常用的是appSettings节点,appSettings里面在添加配置信息

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<appSettings>
<add key="MaxNum" value="10000"/>
</appSettings>
</configuration>

三、读写App.config配置文件

  右键项目的"引用",选择"添加应用",点击弹窗的左上角"程序集",并在右边搜索框输入"System.Configuration",选择"System.Configuration"并确定。

  

  在类中引用命名空间,using System.Configuration;

  1.读取

string maxNumStr= ConfigurationManager.AppSettings["MaxNum"];

  2.修改

Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
cfa.AppSettings.Settings["MaxNum"].Value = '20000';
cfa.Save(ConfigurationSaveMode.Modified);

  注:不管在Debug和实际运行中,其实修改的并不是App.config文件,而是修改的xxx.exe.config文件。程序在实际运行中不会使用App.config文件中的值,都是使用的xxx.exe.config文件。

四、.config和.exe.config和.vshost.exe.config后缀文件的区别

  .vshost.exe.config是程序运行时的配置文本(属于临时文件)

  .exe.config是程序运行后会复制到vshost.exe.config

  .config是在编辑代码时候存在的文件,当右键项目"生成"的时候会在bin\Debug文件下生成.exe.config和.vshost.exe.config文件,后两个文件的内容都是从.config复制而来的

  上述说的修改配置文件,其实指的是修改.exe.config文件,而不是.config文件。

  在程序运行中,.vshost.exe.config和.config两个文件可以不要,但是.exe.config必须要,因为程序读写的都是这个文件。

五、配置文件中的连接字符串connectionStrings

 <?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup> <connectionStrings>
<!--第一种数据库连接字符串-->
<add name="名称1" connectionString="Data Source=服务器名;Initial Catalog=数据库名;User ID=用户;Password=密码" providerName="System.Data.SqlClient" />
<!--第二种数据库连接字符串-->
<add name="名称2" connectionString="server=服务器名;database=数据库名; Ueer ID=用户;Password=密码" providerName="System.Data.SqlClient" />
</connectionStrings> <appSettings>
<add key="MaxNum" value="10000"/>
</appSettings>
</configuration>

  使用connectionStrings的好处:

  第一:可将连接字符串加密,使用MS的一个加密工具即可

  第二:可直接绑定的数据源控件,而不必写代码读出来再赋值给控件

  第三:可方便的更换数据库平台,如更换Oracle数据库,就需要修改providerName

  获取connectionStrings节点中的值:

string connectStr =  ConfigurationManager.ConnectionStrings["名称"];

C# 读写App.config配置文件的更多相关文章

  1. C#中动态读写App.config配置文件

    转自:http://blog.csdn.net/taoyinzhou/article/details/1906996 app.config 修改后,如果使用cofnigurationManager立即 ...

  2. C# 读写App.config配置文件的方法

    我们经常会希望在程序中写入一些配置信息,例如版本号,以及数据库的连接字符串等.你可能知道在WinForm应用程序中可以利用Properties.Settings来进行类似的工作,但这些其实都利用了Ap ...

  3. 读写App.config配置文件的方法

    我们经常会希望在程序中写入一些配置信息,例如版本号,以及数据库的连接字符串等.你可能知道在WinForm应用程序中可以利用Properties.Settings来进行类似的工作,但这些其实都利用了Ap ...

  4. WinForm读写App.config配置文件

    一.配置文件概述: 应用程序配置文件是标准的 XML 文件,XML 标记和属性是区分大小写的.它是可以按需要更改的,开发人员可以使用配置文件来更改设置,而不必重编译应用程序.配置文件的根节点是conf ...

  5. C# 读写App.config 配置文件

    先要添加引用:System.Configuration //using System.Configuration; if (System.IO.File.Exists(AppDomain.Curren ...

  6. C# 读写App.config

    Jul142013 [C#] 读写App.config配置文件的方法 作者:xieyc   发布:2013-07-14 17:29   字符数:3433   分类:编程   阅读: 39,139 次 ...

  7. 关于App.config配置文件

    今天在做复习的时候,突然发现自己无法读取配置文件中的数据库连接字符串,而且检查了半天也没找出原因,最后求助万能的度娘才得以解决—— 1.App.config配置文件在项目中添加后不要修改名称,否则会出 ...

  8. C# 读App.config配置文件[1]:.Net Framework框架

    C# 读App.config配置文件[1]:.Net Framework框架 C# 读App.config配置文件[2]: .Net Core框架 参考:https://www.cnblogs.com ...

  9. 【C#】【WPF】如何读写app.config文件

    WPF生成的项目中会有.exe.config.一般是系统默认配置的 格式是xml格式,C#的项目可以直接读写这些文件.方法代码如下. public static string GetConnectio ...

随机推荐

  1. 兆芯 服务器 win2012/win7装机总结

    兆芯cpu 服务器 win2012/win7装机总结 一.设置U盘启动装机 启动后,esc进入bios修改下图两个地方,都要改,然后保存. 二.重启计算机,进入win安装界面,会出现无法安装,原因是: ...

  2. beeline方式连接hive

    什么是beeline 常用操作 https://www.cnblogs.com/xinfang520/p/7684598.html

  3. MFC中线程相关知识

    MFC中把线程分为两种类型,UI线程和工作者线程. MFC中启动一个线程的最好方法是调用AfxBeginThread,有两个版本,一个用于启动Ui线程,另外一个用于启动工作者线程.在MFC程序中,只有 ...

  4. MySQL优化技巧

    目录 MySQL的特点 数据类型优化 整型类型 小数类型 字符串类型 时间类型 主键类型的选择 特殊类型的数据 索引优化 一个使用Hash值创建索引的技巧 前缀索引 多列索引 聚簇索引 覆盖索引 重复 ...

  5. Python编程练习:平方值格式化

    问题描述:获得用户输入的一个整数N,计算N的平方值:结果采用宽度20字符方式居中输出,空余字符采用减号(-)填充.如果结果超过20个字符,则以结果宽度为准. 示例: 源码: a = int(input ...

  6. 知乎十万级容器规模的Java分布式镜像仓库实践

    作者:知乎令孤无忌 前言 知乎在 2016 年已经完成了全量业务的容器化,并在自研容器平台上以原生镜像的方式部署和运行,并在后续陆续实施了 CI.Cron.Kafka.HAProxy.HBase.Tw ...

  7. BATJ等公司必问的8道Java经典面试题,你都会了吗?

    1.谈谈你对 Java 平台的理解?“Java 是解释执行”,这句话正确吗? 考点分析: 对于这类笼统的问题,你需要尽量表现出自己的思维深入并系统化,Java 知识理解得也比较全面,一定要避免让面试官 ...

  8. centos7换源

    cd /etc/yum.repos.d/ #打开源目录 mv /CentOS-Base.repo /CentOS-Base.repo.bak #备份原来的源wget -O /etc/yum.repos ...

  9. Javascript高级编程学习笔记(54)—— DOM2和DOM3(6)范围选择

    范围 为了让开发人员更加方便地控制页面“DOM2级遍历和范围”模块定义了“范围”接口 通过该接口开发人员可以选择文档中的一个区域,而不必考虑元素的界限 在常规操作不能有效地修改文档时,使用范围往往可以 ...

  10. Python - 关于代码阅读的一些建议

    初始能力 让阅读思路保持清晰连贯,主力关注在流程架构和逻辑实现上,不被语法.技巧和业务流程等频繁地阻碍和打断. 建议基本满足以下条件,再开始进行代码阅读: 具备一定的语言基础:熟悉基础语法,常用的函数 ...