(一) C# 配置文件读取

  C#工程可以自动生成配置文件,以便整个工程可以使用设置的配置进行后续的处理工作。

  1. 首先,右键工程文件-->Properties -->settings-->单击新建一个settings.setting配置文件,里面设置参数Name和Type,scope(application/user, 推荐使用application),以及value。设置完成后,就可以在app.config中看到修改后的配置文件了。

  2. 读取时,使用Properties.Settings.Default.appName的形式,直接进行调用,不需要打开文件等操作,也不需要转换类型,类型就是settings.setting中配置的类型。如:

配置文件中:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<applicationSettings>
  <setting name="_database_server_name" serializeAs="String">
    <value>abc</value>
  </setting>
  <setting name="_database_database" serializeAs="String">
    <value>student</value>
  </setting>
</applicationSettings>
</configuration>

代码中:

string servername = Properties.Settings.Default._database_server_name;  // servername = "abc"

string databasename = Properties.Settings.Default._database_database;   // databasename = "student"

(二)C#多个工程共享共有变量

  经常会遇到这种情况,读一次配置文件,使得整个工程都共享配置,此时,很好的一种方法就是把变量设置成共有的,下面介绍一种共享方式。使用类的共有静态变量,代码如下:

被共享类代码:

namespace aaa.bbb.ccc.ddd

{

  public class CommonClass

  {

    public static string name = null;

    public static int age = 0;

  }

}

调用类代码:

using aaa.bbb.ccc.ddd

...

string local_name = CommonClass.name; // 直接使用共享类的共有静态成员

int local_age = CommonClass.age; // 直接使用共享类的共有静态成员

(三)整理using语句

  在C#中,可能会因为修改代码或者copy其他人的代码,造出有很多的using语句在文件前面,一不好看,无序,二有些改动后,引用没有删掉,造出多于的引用,会引起他人读代码时候的不便,此时需要整理using语句,使其简洁,有序,已读,统一。

方法:

  在源文件的任意位置,点击右键-->Organize Usings --> Remove and Sort 。 之后,就会发现多余的using不见了,而且using是按照字母顺序排列,整洁漂亮。  

VS2012中,C# 配置文件读取 + C#多个工程共享共有变量 + 整理using语句的更多相关文章

  1. Java中Properties配置文件读取

    以下实践的是Properties配置文件的基本操作方法.像spring使用xml做依赖注入时,这个配置文件起到非常实用的作用. 一.格式规范 参考wiki百科的格式简介:https://zh.wiki ...

  2. WPF中关于配置文件的读取

    在WPF中的配置文件的读取也是经常用到的一个操作,虽然很基础,但是也记录一下,以后忘记了可以看一看. 首先就是先新建一个Application Configuration Flie后缀名是.confi ...

  3. ASP.Net Core 5.0 MVC 配置文件读取,Startup 类中ConfigureServices 方法、Configure 方法的使用

    配置文件读取 1. 新建FirstController控制器 在appsettings文件内容替换成以下代码 { "Position": { "Title": ...

  4. C#开发中使用配置文件对象简化配置的本地保存

    C#开发中使用配置文件对象简化配置的本地保存 0x00 起因 程序的核心是数据和逻辑,开发过程中免不了要对操作的数据进行设置,而有些数据在程序执行过程中被用户或程序做出的修改是应该保存下来的,这样程序 ...

  5. [spring源码学习]二、IOC源码——配置文件读取

    一.环境准备 对于学习源码来讲,拿到一大堆的代码,脑袋里肯定是嗡嗡的,所以从代码实例进行跟踪调试未尝不是一种好的办法,此处,我们准备了一个小例子: package com.zjl; public cl ...

  6. Spring中配置和读取多个Properties文件--转

    public class PropertiesFactoryBeanextends PropertiesLoaderSupportimplements FactoryBean, Initializin ...

  7. Spring中配置和读取多个Properties文件

    一个系统中通常会存在如下一些以Properties形式存在的配置文件 1.数据库配置文件demo-db.properties: database.url=jdbc:mysql://localhost/ ...

  8. C 构造一个 简单配置文件读取库

    前言 最近看到这篇文章, json引擎性能对比报告 http://www.oschina.net/news/61942/cpp-json-compare?utm_source=tuicool 感觉技术 ...

  9. C# 配置文件读取与修改

    C# 配置文件读取与修改   配置文件在很多情况下都使用到, 配置文件分为两种 一种是应用程序的配置文件, 一种是web的配置文件. 两种配置文件最大的区别是web的配置文件更新之后会实时更新, 应用 ...

随机推荐

  1. [Docker] docker 基础学习笔记3(共6篇)

    首先我们安装好了ssh server之后, 我们需要将这个容器commit,然后启动这个被commit的image. 启动方式: docker run -d -p 2222:22 /usr/sbin/ ...

  2. mongodb sharding 简单部署记录

    创建目录 mkdir {mongos,config,shard1,shard2} mkdir -p mongos/{data,log} mkdir -p config/{data,log} mkdir ...

  3. SWT组件添加事件的四种方式

    在我们CS日常开发过程中会经常去为组件添加事件,我们常用的为AWT与SWT.SWT的事件模型是和标准的AWT基本一样的.下面将按照事件的四种写法来实现它. 一.匿名内部类的写法 new MouseAd ...

  4. C/C++入门基础---指针(2)

    5,数组指针的不同含义 int a[5][10]; printf(%d, %d, %d\n", a, a+1, &a+1);  //1310392,1310432,1310592 a ...

  5. NHibernate 映射失败 is not mapped

    1 区分大小写(实体类名) 2 MAP的XML设置为嵌入的资源 3 hibernate.cfg.xml配置添加map的程序集<mapping assembly="Model" ...

  6. 更新CocoaPods

    终端输入 : sudo gem install -n /usr/local/bin cocoapods –pre 更新了CocoaPods后,在原来的工程中执行了pod install命令后,报这样的 ...

  7. ModelAndView详解

    ModelAndView的构造方法有7个.但是它们都是相通的. 这里使用无参构造函数来举例说明如何构造ModelAndView实例. ModelAndView类别就如其名称所示,是代表了MVC Web ...

  8. 整理分享C#通过user32.dll模拟物理按键操作的代码

    对系统模拟按键方面的知识和按键映射代码做了一下梳理,在这里分享出来,适用于开发自动操作工具和游戏外挂. 主代码: public const int KEYEVENTF_EXTENDEDKEY = 0x ...

  9. 个人理解的javascript作用域链与闭包

    闭包引入的前提个人理解是为从外部读取局部变量,正常情况下,这是办不到的.简单的闭包举例如下: function f1(){ n=100; function f2(){ alert(n); } retu ...

  10. javascript除法如何取整

    Math.round(x) 四舍五入,如Math.round(0.60),结果为1:Math.round(0.49),结果为0: Math.floor(x) 向下舍入,如Math.floor(0.60 ...