I have a configuration class store application configuration. Currently I am using a static class. Some of the configurations are related to one topic so I want to organize them into a nested class, so I can reference configurations like this:
AppConfig.Url
AppConfig.LogSettings.FileSize
I have two options, either use a static nested class,
public static class AppConfig
{
    public static class LogSettings
    {
        public static int FileSize {get; set;}
    }
}
or declare a class but add a static property:
public static class AppConfig
{
    public class LogSettings
    {
        public int FileSize {get; set;}
    }
    public static LogSettings logSettings { get; private set; }
}
However, none of them can protect nested class member FileSize being modified by other classes, even I use private set to protect the public static property.
Maybe I should not use nested class to implement this? Any suggestions?
 
     
     
     
     
    