WEB开发网
开发学院软件开发C语言 Effective C# 原则37:使用标准的配置机制 阅读

Effective C# 原则37:使用标准的配置机制

 2009-02-19 08:15:49 来源:WEB开发网   
核心提示:我们要寻求一种避免直接写代码的应用程序配置和信息设置方法,我们已经创建了多种不同的策略来存储配置信息,Effective C# 原则37:使用标准的配置机制,而我们是要寻求一种正确的方法,我们要不断提高和改我们的想法,你可以添加任何程序须要的值来控制程序行为,当修改配置文件时,关于哪里是放置这些信息的好地方,INI文件

我们要寻求一种避免直接写代码的应用程序配置和信息设置方法,我们已经创建了多种不同的策略来存储配置信息。而我们是要寻求一种正确的方法,我们要不断提高和改我们的想法,关于哪里是放置这些信息的好地方。INI文件?这是Windows3.1做的事,配置信息的结构是受限制的,而且在文件名上可能还会与其它程序程序相冲突。注册表?是的,是这个正确的想法,但它也有它的限制。乱七八糟的程序可能会通过在注册表里写一些错误信息来严重破坏计算机。正因为写注册表存在危险,一个应用程序必须有管理员权限来写注册表的一部份。你的所有用户都会是以具有修改注册表权利的管理员身份在运行吗?希望不是,如果你使用注册表,而你的用户不是以管理员身份运行的,在试图读写注册表时,将会得到一个异常和错误。

谢天谢地,还有很多更好的方法来存储设置信息,这样你的程序可以根据用户的选择不同适应不同的行为,例如安装参数,机器设置,或者其它任何事情。.Net框架提供了一个标准的设置位置,这样你的程序可以使用它来存储配置信息。这些存储位置是由应用程序特别指定的,而且当程序执行的机器上的用户被限制了权限时一样可以有效的工作。

只读的信息是属于配置文件的,XML文件控制应用程序中不同类型的行为;定义的结构表指明了所有的元素和属性,而这些都是.NET FCL从配置文件中分析出来的。 这些元素控制一些设置,例如正在使用那个框架版本,支持的调试级别(参见原则36),以及程序集的搜索路径。有一个节点你是必须要明白的,那就是appSettings部份,它可以同时应用与web应用程序和桌面应用程序。运行程序在启动时读取这一节点的信息,它加载所有的关键字和值到一个属于应用程序的名字值集合(NameValueCollection)中。这是你自己程序的一部份,你可以添加任何程序须要的值来控制程序行为。当修改配置文件时,也就修改了程序行为。

1 2 3 4  下一页

Tags:Effective 原则 使用

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接