在哪里存储不同的配置设置? C#服务

时间:2011-06-29 14:46:15

标签: c# xml properties xml-serialization

这是我第一次使用配置文件,所以我不确定要走哪个方向。我环顾四周但没有找到任何具体的答案。

我有一些配置设置,即整数列表,自定义对象列表和单个整数。目前,我正在为我的配置文件追求XML,我正在使用序列化来存储和读取我的自定义对象列表。但是,我不确定将其他设置存储在同一文件中的约定或可能性。理想情况下,我希望它是一个可通过GUI配置的单个文件,我可以用XML实现这一点吗?

如何存储和读取我的其他列表,并单独使用单个int?即参考文件的那一部分? - 序列化允许这样做还是需要多个文件?这会是不好的做法吗?

我应该使用不同类型的配置文件,还是使用我的XML文件以外的设置?拥有多种配置模式是不好的做法吗?

非常感谢您提出的任何建议!

4 个答案:

答案 0 :(得分:1)

如果是Windows服务,您可能想要使用注册表

如果它是一个WCF服务,那么有一个定义良好的XML格式,它们使用.net .config格式。

您可以在此处添加自定义设置,也可以使用自己的格式规则添加自定义部分。

答案 1 :(得分:1)

我曾经在app.config文件中存储配置信息(不是单独的)。无论如何为大公司工作,我发现在生产中你无法访问app.config文件(只有IT人员可以访问生产)。因此,如果您需要更改配置,则需要通过更改请求,这需要时间。所以在这种情况下我开始将配置信息存储在数据库中。这样我就可以随时更改,而且我不需要通过更改请求。

关于单独的xml或app.config。如果你有很多配置信息,或者结构化/嵌套的信息,我会使用单独的配置文件,但大部分时间(99%)我只使用app.config。

查看how to store int array in application settings

答案 2 :(得分:0)

答案 3 :(得分:0)

你有什么版本的.NET / VS.NET? VS 2008及更高版本,您可以在内部添加自定义配置文件,即XML,但可以通过IDE中的自定义网格编辑器进行修改