覆盖.NET类库的配置文件位置?

时间:2010-07-06 22:55:49

标签: .net configuration-files

我有一个类库,我想从.NET应用程序中调用它,并通过COM公开并从例如excel调用。

此类库需要从配置文件中获取一些值。从我的.NET应用程序引用时,我当然可以将它需要的东西放在app.config中。但是从excel打电话时我不能这样做。

从excel调用时,有没有办法覆盖配置文件的位置?

2 个答案:

答案 0 :(得分:1)

不完全是。您可以做的是使用ConfigurationManager.OpenExeConfiguration打开一个特定的配置文件,并从那里读取配置设置。

然而,这是一个很好的例子,说明为什么类库不能直接引用应用程序配置:库设计为跨应用程序重用,不同的应用程序可能有不同的方式来指定配置选项。这不仅适用于Excel。

相反,您应该设计您的库,以便控制其行为所需的任何选项都可以设置为属性或作为方法参数传入,以更适合选项和API的样式。

答案 1 :(得分:0)

如果您正在使用应用程序设置并希望控制保存/加载的位置,this answer会提供有关如何执行此操作的信息。