title: C# Lazy Loaded Automatic Properties
body: <p>In C#,</p>
  
  <p>Is there a way to turn an automatic property into a lazy loaded automatic property with a specified default value?</p>
  
  <p>Essentially, I am trying to turn this...</p>
  
  <pre><code>private string _SomeVariable
  
  public string SomeVariable
  {
       get
       {
            if(_SomeVariable == null)
            {
               _SomeVariable = SomeClass.IOnlyWantToCallYouOnce();
            }
  
            return _SomeVariable;
       }
  }
  </code></pre>
  
  <p>into something different, where I can specify the default and it handles the rest automatically...</p>
  
  <pre><code>[SetUsing(SomeClass.IOnlyWantToCallYouOnce())]
  public string SomeVariable {get; private set;}
  </code></pre>