title: Compare attribute does not use Display attribute of compared property
body: <p>I have a ViewModel used for changing a password, and it uses the <code>Compare</code> DataAnnotation like so:</p>
  
  <pre><code>[Display(Name = "New Password")]
  public string New { get; set; }
  
  [Compare("New")]
  [Display(Name = "Confirm Password")]
  public string ConfirmPassword { get; set; }
  </code></pre>
  
  <p>Unfortunately the <code>Compare</code> attribute does not utilize the <code>Display</code> attribute of the compared property.</p>
  
  <p>The error message displays as</p>
  
  <pre><code>'Confirm Password' and 'New' do not match.
  </code></pre>
  
  <p>which you can see uses the comparing property's <code>Display</code> attribute, but not the compared property's.</p>
  
  <p>I'll also specify that I don't want to use the <code>ErrorMessage</code> parameter because then I'd be hard-coding the property name rather than simply acquiring it from an existing attribute. I'd like to keep this solution as best-practice as possible.</p>
  
  <p>How can I make the <code>Compare</code> attribute utiliize the <code>Display</code> attribute of the compared property?</p>