C# app.dll.config在哪里

C# app.dll.config在哪里,c#,.net,c#-4.0,assemblies,app-config,C#,.net,C# 4.0,Assemblies,App Config,我有一个C#类库(dll;.NET4.0)。我叫它“mytestlib”。我添加了一个Settings.setting,它还向项目中添加了一个app.config文件。它有两个应用程序范围属性,还有一些用户范围属性 在调试过程中,我可以在bin\debug文件夹中看到“mytestlib.dll.config”文件。但是,当我使用MSI安装程序安装库时,我在系统的任何地方都找不到“mytestlib.dll.config”!微软把app.dll.config放在哪里??我开始怀疑它实际上是嵌入在

我有一个C#类库(dll;.NET4.0)。我叫它“mytestlib”。我添加了一个Settings.setting,它还向项目中添加了一个app.config文件。它有两个应用程序范围属性,还有一些用户范围属性

在调试过程中,我可以在bin\debug文件夹中看到“mytestlib.dll.config”文件。但是,当我使用MSI安装程序安装库时,我在系统的任何地方都找不到“mytestlib.dll.config”!微软把app.dll.config放在哪里??我开始怀疑它实际上是嵌入在dll中的(我希望不是这样)

我知道它在某个地方,因为使用此dll的exe应用程序确实成功地从“mytestlib.dll.config”文件中提取了设置。问题是我不知道文件在哪里

顺便说一句,我可以找到user.config

请帮助并提前感谢您

注意:我可以使用Windows窗体应用程序(exe)执行同样的操作,然后使用MSI安装程序安装,我发现app.exe.config与.exe并排出现,正如我所期望的那样。为什么app.dll.config的工作方式不同?

有两件事:

1——您应该考虑将相关配置条目放入启动*.Ex.CONFIG中。这些将由DLL相应地拾取

2-你的安装程序可能不会知道conifg文件,除非你特别告诉它


3-创建DLL配置文件是为了在测试项目和其他场景中使用,不一定是为了运行时,但如果您愿意,您可能可以部署它并在运行时使用它。

根据文档,类库没有配置文件模型。库中定义的app/user设置实际上将使用引用库的exe的app/user.config。因此没有app.dll.config(设置位于引用dll的应用程序的app.exe.config中)。

实际配置文件与.exe关联,而不是与.dll关联。DLL没有自己的.config文件。可能是编译器生成了供您参考的.dll.config(从未使用dll尝试过),但必须将相应的节复制到.exe的app.config。它可能需要包含在您的安装程序中。MSI在哪里安装dll?我有一个项目将dll与exe放在同一文件夹中。但我有另一个项目,dll进入GAC。我找不到任何一个的app.dll.config。唯一的问题是使用我们的dll的exe是由另一方拥有的。@c汉普森你能澄清你所说的拥有是什么意思吗?为什么它会阻止将您的条目添加到配置文件中?所谓“拥有”,是指它是另一家公司的应用程序,我无权访问源代码。@cchampion在运行时更改exe.config文件时,您不需要访问其源代码。