在.NET中,在构建项目之后,为什么我有时会有app.config,有时还会有一个binaryname.dll.config文件?
解决方法
您在开发期间(在Visual Studio中)将其视为app.config文件.部署时(以及bin目录中),app.config将成为binaryname.dll / exe.config文件(由Visual Studio自动重命名).
至于确切的原因……有一个很好的理由不把它作为app.config …例如,如果你在同一目录中部署多个应用程序,你将只能有一个app.config .. .so有一个很好的理由将其命名为binaryname.dll.config.
所以真正的问题是:为什么它首先命名为app.config而不是binaryname.dll.config?
我能想到的一个原因是你总是可以在项目选项中更改二进制输出名称(因此编译器会生成名称与项目名称不同的.exe文件),并且将复制配置文件以对应于该二进制输出名称.在解决方案中将它命名为app.config是更好的,因为您始终将相同的文件名复制到某个目标文件名,而无需在解决方案中重命名该文件(特别是当该文件受源代码控制时).可能还有其他一些原因.