Change app.config settings

S

Scanner2001

I have a service with settings in the app.config file. I would like to
be able to change these settings without restarting the service. Something
similar to a web.config with web services. Whenever I change a setting, for
example the folder that data is written to, the change does not seem to
register. What I believe is that the app.config is read in at the startup of
the exe (windows service), and then never read again. Is there a way to
force it to read it again? I would prefer not to create another config file
if I do not have to.
Also, is there a more specific group to post to? Such as windows
services newsgroup?

Thanks,
J
 
P

Peter Rilling

Everything is possible, but not always easy. The configuration file is
handled by .NET and therefore you, directly, cannot force it to reload. One
thing you might do is to alter your architecture such that you are able to
load a new AppDomain instance. Then you can pass the config file which is
loaded, of coarse, this will essentially create a copy of your program in
memory. This is sort of what ASP.NET does. When the config has changed, a
separate processing space is loaded to handle future requests (I think this
is how it works). You could also do away with the whole .NET configuration
system and write your own that can be loaded anytime you want.

Given all this, it just might be easier to restart the service.
 
W

William Stacey [MVP]

I would just write a simple class and use XmlSerializer to load and save
config.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top