title: Should I call the base class implementation when overriding a method in C# for ASP.NET?
body: <p>I understand overriding a method/function redefines its implementation in the derived class from its implementation in the base class.</p>
  
  <p>Now what confuses me, is if I override a class in ASP.NET such as <code>CreateChildControls()</code> (I picked it randomly for no particular reason), VS2008 auto generates:</p>
  
  <pre><code>protected override void CreateChildControls()
  {
     base.CreateChildControls();
  }
  </code></pre>
  
  <p>Good enough, the default implementation just calls the base class' <code>CreateChildControls()</code>.</p>
  
  <p>So if I want to run some code, since I do not know how <code>base.CreateChildControls()</code>, should I do this:</p>
  
  <pre><code>protected override void CreateChildControls()
  {
     /*My Code Here*/                    
     base.CreateChildControls();
  }
  </code></pre>
  
  <p>or, ignore what <code>base.CreateChildControls()</code> altogether and just do</p>
  
  <pre><code>protected override void CreateChildControls()
  {
     /*My Code Here*/                    
  }
  </code></pre>