title: Static constructor not called before static fields
body: <p>I have a class as follows :
  <br/></p>
  
  <pre><code>static class Configuration
      {
          private static AppSettingsSection _appSettingsLogsSection;
          static Configuration()
          {
              var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
              _appSettingsLogsSection = config.GetSectionGroup("Logs").Sections["appSettings"] as AppSettingsSection;
          }
  
          public static int LogSendIntervalMinutes = Convert.ToInt32(_appSettingsLogsSection.Settings["LogSendIntervalMinutes"]);
  
      }
  </code></pre>
  
  <p>Now, as per my understanding, the static constructor should be called before the first reference to any static member is made. But surprisingly, it is not behaving like that. When I reference <strong>LogSendIntervalMinutes</strong> from Main class, instead of triggering the static constructor, call goes straight to the static field resulting in a NullReferenceException. 
  <br/>
  <br/>
  Am I doing something wrong here and is my understanding correct?</p>