0

好的,所以到目前为止我有 2 个类,我想放入我的通用 dll、记录器和数据库。我将它们从我当前的项目移动到一个新的类库项目并更改它们的命名空间等等。我遇到的问题是我希望使用我的应用程序的应用程序配置(或我想引用我的 commonlib.dll 的任何应用程序),但我不知道如何使用引用项目 app.config。有没有办法做到这一点?

4

1 回答 1

2

ConfigurationManager的OpenExeConfiguration() 方法是您的票证。其中一个将获取可执行文件的路径,允许您打开指定应用程序的应用程序配置(甚至是不同的应用程序;您可以使用此技术在使用 Process.Start() 启动另一个应用程序之前更改它的配置) . 另一个将为指定的用户级别(所有用户、当前漫游用户、当前漫游和本地用户)打开当前应用程序的 app.config(即使您的库被多个应用程序使用)。通常,在处理实际的 app.config 时,您需要适用于所有用户的那个;每个用户的配置存储在每个用户的 AppData 文件夹中。

另外,最后一件事;除非您的库有自己的配置文件,否则 ConfigurationManager 属性(如 AppSettings)将根据当前可执行文件的 app.config 进行填充。所以它可以像使用这些属性一样简单。请记住,这些属性是只读的,并且仅在程序启动时加载一次,因此如果您在程序执行期间对配置进行更改并希望立即生效,最好显式加载/保存配置文件。

于 2013-01-22T15:37:22.880 回答