title: How to use a derived class attribute in the base class? C#
body: <p>I've got these two classes:</p>
  
  <pre class="lang-cs prettyprint-override"><code>abstract class BaseModel
  {
    ...
    public List&lt;String&gt; fields;
    ...
    public DataSet select(){
      //ex : this here the fields is null; but this class being abstract means
      // I can only call this from an inherited class of this (child class)
      // which will have the fields attributes override
      this.fields.Count();
    }
  }
  
  public class User : BaseModel
  {
    public new List&lt;String&gt; fields = new List&lt;String&gt; {
      "id",
      "email",
      "name",
      "password"
    };
  }
  </code></pre>
  
  <p>If I create a new instance of <code>User</code>, and then call the <code>select</code> method, I get a <code>null</code> error.
  Am I overwriting the fields attribute the wrong way?</p>