private static FieldInfo GetField(Type type, string name)
{
var field = type.GetTypeInfo().GetDeclaredField(name);
if (field != null)
return field;
var baseType = type.GetTypeInfo().BaseType;
if (baseType != null)
return GetField(baseType, name);
return null;
}