title: Getting property type with reflection
body: <p>I have a little problem by getting the type of an Property by reflection.</p>
  
  <p>I have a class which include only simple types like string, int, decimal...</p>
  
  <pre><code>public class simple 
  {
    public string article { get; set; }
    public decimal price { get; set; }
  }
  </code></pre>
  
  <p>Now I need to take this properties by reflection and handle them by it's type.</p>
  
  <p>I need something like this:</p>
  
  <pre><code>Type t = obj.GetType();
  PropertyInfo propInfo = t.GetProperty("article");
  Type propType = ??  *GetPropType*() ??
  
  switch (Type.GetTypeCode(propType))
  {
    case TypeCode.Decimal:
      doSome1;
      break;
    case TypeCode.String:
      doSome2;
      break;
  }
  </code></pre>
  
  <p>For strings it works to do 
  <code>propInfo.PropertyType.UnderlyingSystemType</code> as GetPropType() but not for decimal for example.</p>
  
  <p>For decimal works <code>propInfo.PropertyType.GenericTypeArguments.FirstOrDefault();</code> but not for strings.</p>
  
  <p>Hos can get the type for all simple types?</p>