private static void DoPostTypeMemberConversion(Type type) { bool hasError = false; foreach (MemberInfo memberInfo in ChoType.GetMemberInfos(type, typeof(ChoTypeConverterAttribute))) { object memberValue = null; try { memberValue = ChoType.GetMemberValue(null, memberInfo.Name); ChoType.SetMemberValue(null, memberInfo, ChoObject.ConvertValueToObjectMemberType(type, memberInfo, memberValue) /* ChoConvert.ChangeType(configObject, memberInfo) */); } catch (TargetInvocationException) { throw; } catch (ChoFatalApplicationException) { throw; } catch (Exception ex) { hasError = true; ChoConfigurationObjectErrorManagerService.SetObjectMemberError(type, memberInfo.Name, String.Format("[Value: {0}] - {1}", ChoString.ToString(memberValue), ex.Message)); ChoType.SetMemberDefaultValue(null, memberInfo.Name); } } if (hasError) { ChoConfigurationObjectErrorManagerService.SetObjectError(type, "Object has some validation errors."); } }