title: centralize data annotation for MVVM
body: <p>Is there any better way to centralize data annotations for models and view models, or even different view models but they have some properties are the same.?</p>
  
  <p>One way I came out with is to use specialize data annotation. like [AgeRange], with built in range from 0 to 100.</p>
  
  <pre><code>public class Model{
  [range(0,100)]
  public int Age{get;set;}
  }
  
  public class ViewModel{
  [range(0,100)]
  public int Age{get;set;}
  }
  </code></pre>