这个问题是由another issue触发的我只是在处理。有一个托管库,MyAssembly.dll
,针对 .NET 4.0。它有自己的MyAssembly.dll.config
文件与一些 <bindingRedirect>
指示。我相信.config
文件是由编译器或 NuGet 包管理器生成的,因为我没有手动创建它。
问题是,当客户端应用程序加载 DLL 时,绑定(bind)指令将被忽略(在我的例子中是 RegAsm.exe
,但我也使用一个简单的控制台 .NET 应用程序验证了这一点)。我必须将它们从 DLL 的 .config 文件移动到客户端 EXE 应用程序的 .config 文件中,以便由 .NET 运行时获取并得到正确解析。
问题:托管库程序集 (.DLL) 的 .config 文件的目的到底是什么?它是否参与库程序集的加载过程?
最佳答案
没有“目的”。库的使用者可以将 .dll.config 中的设置复制到他们自己的 .exe.config 或 web.config 中。
.dll.config 文件只是为 Visual Studio 提供了一个存储库配置的地方。
考虑到,一般来说,一个库可以被多个调用者使用,每个调用者都有不同的配置。实际上,一般,让库来指定设置没有多大意义。
关于c# - .DLL 库程序集的 .config 文件的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20135891/