管理大型项目中的配置文件和代码常量

本文关键字:代码 常量 配置文件 大型项目 管理 | 更新日期: 2023-09-27 18:16:11

我正在做一个巨大的c#代码库(~300 KLOC)。系统的组件使用分散在文件夹层次结构中的配置文件。在一个地方从配置中读取的值存储在另一个地方的常量中。在不同的文件夹中有几个相同配置的副本,复制并签入一次,然后永远不会更新。有些文件有3个不同的版本,一个用于开发机器,一个用于登台,另一个用于实时系统。我得把这烂摊子收拾干净。我该怎么开始呢?处理不同文件中的重复值、同一文件的多个副本以及不同构建环境的多个版本的智能策略是什么?我怎样才能在不产生"依赖磁铁"的情况下将所有内容存储在一个地方?

管理大型项目中的配置文件和代码常量

清理工作将会很痛苦;在你前进的过程中,你将不得不做很多查找/替换。我将从利用。net已经提供的功能开始,也就是说,将所有这些设置放在Application.config(如果是ASP,则是Web.config)上。. NET应用程序),并使用ConfigurationManager.AppSettings["key"]检索各种值。至于不同的环境,也有开箱即用的支持,您可以使用appSettings转换

您的祈祷的答案是ConfigGen。查看CodePlex: ConfigGen

它完全符合你的要求。

:看看我在这里的用法示例:如何为几个构建配置选择不同的app.config