title: Best way to add same property to two classes
body: <p>I have a class structure like so:</p>
  
  <pre><code>public class Base
  {
    public string PropBase { get; set; }
  }
  
  public class Derived : Base 
  {
    public string PropDerived { get; set; }
  }
  </code></pre>
  
  <p>Now these classes are used in the webapi controllers and one action returns a <code>Base</code> and another <code>Derived</code>.</p>
  
  <p>I want to have another controller that would have the same action structure (and would return two models), but i want to add another property to both of these.</p>
  
  <p>I thought of having something like</p>
  
  <pre><code>public class BaseSpecific : Base
  {
    public string Common { get; set; }
  }
  
  public class DerivedSpecific : Derived
  {
    public string Common { get; set; }
  }
  </code></pre>
  
  <p>But this doesn't look DRY to me.</p>
  
  <p>I don't really want to use the more specific <code>Derived</code> class for both actions because it muddles the intent of the code.</p>
  
  <p>What's the best way to do this?</p>
  
  <p>P.S. The example is over-simplified, of course. The controllers live in two different projects, and the models live in a nuget package shared across the two. </p>