title: How to declare a class instance as a constant in C#?
body: <p>I need to implement this:</p>
  
  <pre><code>static class MyStaticClass
  {
      public const TimeSpan theTime = new TimeSpan(13, 0, 0);
      public static bool IsTooLate(DateTime dt)
      {
          return dt.TimeOfDay &gt;= theTime;
      }
  }
  </code></pre>
  
  <p><code>theTime</code> is a constant (seriously :-), like <code>π</code> is, in my case it'd be pointless to read it from settings, for example. And I'd like it to be initialized once and never changed.</p>
  
  <p>But C# doesn't seem to allow a constant to be initialized by a function (which a constructor is). How to overcome this?</p>