/// <summary> /// Creates option for selecting random amounts with rating. /// </summary> /// <remarks> /// Rating is checked if lower is higher than the higher value /// </remarks> /// <param name="value"></param> /// <param name="rangeLower"></param> /// <param name="rangeUpper"></param> public RandomSelectOption(int value, bool?ratingEnabled, byte rangeLower, byte rangeUpper) { this.Amount = value; if (rangeLower > rangeUpper) { rangeUpper = rangeLower; } RatingRange = new RangeFilterOption <byte>(rangeLower, rangeUpper); RatingRange.IsEnabled = ratingEnabled ?? false; }
/// <summary> /// Gets an AND clause on a range (low => high)....used for ratings and bpm /// </summary> /// <typeparam name="T"></typeparam> /// <param name="name"></param> /// <param name="rangeFilterOption"></param> /// <returns></returns> private string GetRangeFilter <T>(string name, RangeFilterOption <T> rangeFilterOption) { return($"({name} >= {rangeFilterOption.Low} AND {name} <= {rangeFilterOption.Hi}) AND "); }