/// <summary> /// Проверить значение, уже десериализованное, на вхождение в AllowedValues /// </summary> void CheckByAllowedValues(object value, string valueSrc, bool isFromCmd) { if (AllowedValues?.Length > 0 && AllowedValues.Where(x => x != null).All(x => !CompareWithAllowedValue(value, x))) { string e = $"Argument [{Name}]: value [{valueSrc}] is not allowed"; throw isFromCmd ? (Exception) new CmdException(e) : new ConfException(e); } }