app.config文件混淆.net应用程序

时间:2010-12-03 16:25:54

标签: vb.net visual-studio-2008

我有一个包含4个项目的解决方案,所有这些项目都相互影响。每个项目都包含自己的名为“app.config”的app.config文件,有时可能包含相同的appsettings字段。但是出于某种原因,当从一个project.method调用另一个时,在初始化时,它会从调用项目方法调用app.config文件。这不应该是这种情况,因为我知道每个项目都使用自己的配置文件进行编译。

 o = streamSettings.GetValue("ConnectionString", GetType(String))
    connectionString = o.ToString()

    o = streamSettings.GetValue("LogFileDirectory", GetType(String))
    logFileDirectory = o.ToString()

这对所有项目都是一样的,但我在这里得到了错误的连接字符串。

1 个答案:

答案 0 :(得分:1)

任何项目都是偶然的。

.NET的配置系统将APP.CONFIG文件与PROCESS相关联,而不是可执行映像。

所以,假设您有ProjectA(EXE)和项目b(DLL)的解决方案。

项目A引用项目B并调用项目B.

在项目A中,对配置方法的调用将从项目A的App.config中获取。

一旦项目A调用项目b,项目B中的代码也将最终引用项目A的配置文件,只是查看项目B中定义的部分。

这很奇怪而且相当不合适,但这似乎是故意的

网上有一些关于如何设置DLL的文章,以便从它的OWN配置文件中读取。

这是SO本身的一个

C# DLL config file