title: Add custom Model Binders for derived objects and their base
body: <p>My class diagram:</p>
  
  <p>BaseContentClass</p>
  
  <ul>
  <li>Page inherits BaseContentClass</li>
  <li>Tab inherits BaseContentClass</li>
  <li>...</li>
  </ul>
  
  <p>If I do this </p>
  
  <pre><code>ModelBinders.Binders.Add(typeof(BaseContentObject), new BaseContentObjectCommonPropertiesBinder());
  </code></pre>
  
  <p>then when in controller action parameter of type Tab appears, custom model binder is not fired.</p>
  
  <p>It gets fired if I do this:</p>
  
  <pre><code>ModelBinders.Binders.Add(typeof(Tab), new BaseContentObjectCommonPropertiesBinder());
  </code></pre>
  
  <p>But I don't want to go writing "n" number of Add statements in my global.asax.cs to associate all the derived classes with my custom model binder, do I? I don't know if I have any other option.</p>