/// <summary> /// Whether or not the field represented by the field generator is an enum that can represent multiple values. /// i.e. whether or not the field is a flags enum. /// </summary> /// <returns>Whether or not the field is a flags enum</returns> public static bool HasMultipleEnumValues <TModel, T>(this IFieldGenerator <TModel, T> fieldGenerator) { return(!fieldGenerator.HasEnumerableValues() && fieldGenerator.GetUnderlyingType().IsEnum && fieldGenerator.GetUnderlyingType().GetCustomAttributes(typeof(FlagsAttribute), false).Any()); }
/// <summary> /// Whether or not the field represented by the field generator allows the user to enter multiple values. /// </summary> /// <returns>Whether or not the user can enter multiple values</returns> public static bool HasMultipleValues <TModel, T>(this IFieldGenerator <TModel, T> fieldGenerator) { return(fieldGenerator.HasMultipleEnumValues() || fieldGenerator.HasEnumerableValues()); }