title: Getting a Method may only be called on a Type for which Type.IsGenericParameter is true. On a overload type in my ViewModel
body: <p>Here is the Property in the Base Class  </p>
  
  <pre><code>[ReadOnly(true), Display(GroupName = "Payment Details")]
  public virtual GridViewModel&lt;PaymentDetails&gt; Details { get; set; } 
  </code></pre>
  
  <p>Here is the Property in the Inherited Class </p>
  
  <pre><code>[Display(AutoGenerateField = false, AutoGenerateFilter = false), ScaffoldColumn(false)]
  public override GridViewModel&lt;PaymentDetails&gt; Details { get; set; } 
  </code></pre>
  
  <p>I get Method may only be called on a Type for which Type.IsGenericParameter is true. error Here is a piece of the  Call Stack</p>
  
  <pre><code>[InvalidOperationException: Method may only be called on a Type for which Type.IsGenericParameter is true.]
     System.RuntimeType.get_DeclaringMethod() +9546416
  
  [TargetInvocationException: Property accessor 'DeclaringMethod' on object 'System.RuntimeType' threw the following exception:'Method may only be called on a Type for which Type.IsGenericParameter is true.']
     System.ComponentModel.ReflectPropertyDescriptor.GetValue(Object component) +400
     System.Web.Mvc.&lt;&gt;c__DisplayClassb.&lt;GetPropertyValueAccessor&gt;b__a() +18
     System.Web.Mvc.ModelMetadata.get_Model() +19
     System.Web.Mvc.TemplateInfo.Visited(ModelMetadata metadata) +69
  </code></pre>