Saturday, 25 June 2016

Pros and cons of AppSettings vs applicationSettings (.NET app.config / Web.config)



When developing a .NET Windows Forms Application we have the choice between those App.config tags to store our configuration values. Which one is better?





















TABLEA






Answer



The basic is easier to deal with - just slap in a entry and you're done.




The downside is: there's no type-checking, e.g. you cannot safely assume your number that you wanted to configure there really is a number - someone could put a string into that setting..... you just access it as ConfigurationManager["(key)"] and then it's up to you to know what you're dealing with.



Also, over time, the can get rather convoluted and messy, if lots of parts of your app start putting stuff in there (remember the old windows.ini file? :-)).



If you can, I would prefer and recommend using your own configuration sections - with .NET 2.0, it's really become quite easy, That way, you can:




  • a) Define your configuration settings in code and have them type-safe
    and checked

  • b) You can cleanly separate YOUR settings from everyone

    else's. And you can reuse your config code, too!



There's a series of really good articles on you to demystify the .NET 2.0 configuration system on CodeProject:




  1. Unraveling the mysteries of .NET 2.0 configuration


  2. Decoding the mysteries of .NET 2.0 configuration


  3. Cracking the mysteries of .NET 2.0 configuration





Highly recommended! Jon Rista did a great job explaining the configuration system in .NET 2.0.


No comments:

Post a Comment

c++ - Does curly brackets matter for empty constructor?

Those brackets declare an empty, inline constructor. In that case, with them, the constructor does exist, it merely does nothing more than t...