title: validation enable/disable on class properties
body: <p>Sorry for the title, don't know what should I use for this issue.</p>
  
  <p>Issue is I am using Attributes &amp; reflection for validation implementation in my C# application something like this.</p>
  
  <pre><code>public class foo : validationBase
  {
      [RequiredAttribute("id is required")]
      public int id { get; set; }
      [RequiredAttribute("name is required")]
      public string name { get; set; }
  
      void save()
      {
         this.IsValid();
         //some code
      }
      void update()
      {
         this.IsValid();
         //some code
      }
      void delete()
      {
         // Need some magic here to ignore name attribute's required validation as only id 
         // is needed for delete operation
         this.IsValid();
  
         //some code
      }
  }
  </code></pre>
  
  <p>as you may see in delete operation I don't want to validate <code>name</code> property's required validation, <strong>NOTE there may be some more validation attributes to a single property and there could be a requirement that one attribute's validation should not fire but other's should</strong>.</p>
  
  <p>Please provide you views to solve this one.</p>