无需重新编译即可更改.NET应用程序设置

Dea*_*uga 6 .net application-settings

我有一个引用另一个程序集(类库)的Windows服务.在这个其他程序集中,我使用Application Settings来存储一些值.当我将所有必需的文件复制到服务器时,我可以在AssemblyName.dll.config文件中看到这些设置.

但是,当我更改此配置文件中的设置并重新启动服务时,更改无效.即使我卸载/重新安装该服务,它仍然会在运行时返回旧值.

配置文件:

   <setting name="RecordLimit" serializeAs="String">
     <value>300</value>
   </setting>
Run Code Online (Sandbox Code Playgroud)

码:

if (recordCount > Settings.Default.RecordLimit) //always 300
Run Code Online (Sandbox Code Playgroud)

因此,即使我将配置文件中的值更改为400并重新启动甚至重新安装服务,该值始终为300,这使我认为此值存储在已编译的代码中并从其中返回.

我做错了什么,应用程序设置的更改总是需要重新编译并重新安装(我知道我可以使用Save()方法从代码更改设置但这是一个Windows服务,所以使用此方法似乎没有感)?

如果存储在配置文件中的这些设置无效并且设置存储在已编译的代码中,我可以安全地删除这些配置文件吗?

如果没有重新编译我必须存储的其他选项设置,我可以更改这些设置,而无需重新编译?

编辑:我刚刚删除了AssemblyName.dll.config文件,代码返回300,所以配置文件显然是无关紧要的.

Mr.*_*Mr. 0

引用 DLL 的 exe 可以在其自己的配置中操作配置设置吗?

您应该尝试将设置添加到 exe.config 作为测试。