/// <summary> /// Constructor. /// </summary> /// /// <param name="orGroup"> /// Or group (filters with the same group value will be linked with AND operand. OR operand is used between filters having different group value). /// </param> /// /// <param name="columnName"> /// Column name. /// </param> /// /// <param name="filterOperator"> /// Filter operator. /// </param> /// /// <param name="accentSensitivity"> /// Accent sensitivity enumeration. /// </param> public Filter(int orGroup, string columnName, FilterOperator filterOperator, AccentSensitivity accentSensitivity = AccentSensitivity.Without) : this() { this.OrGroup = orGroup; this.ColumnName = columnName; this.Operator = filterOperator; this.AccentSensitivity = accentSensitivity; }
/// <summary> /// Add a filter. /// </summary> /// <param name="filters">Filter collection.</param> /// <param name="columnName">Column name.</param> /// <param name="filterOperator">Filter operator.</param> /// <param name="value">Value to add.</param> /// <param name="accentSensitivity">Accent sensitivity enumeration.</param> public static void Add(this IList <Filter> filters, string columnName, FilterOperator filterOperator, object value, AccentSensitivity accentSensitivity = AccentSensitivity.Without) { filters.Add(0, columnName, filterOperator, value, accentSensitivity); }
/// <summary> /// Add a filter. /// </summary> /// <param name="filters">Filter collection.</param> /// <param name="orGroup">Or group (filters with the same group value will be linked with AND operand. OR operand is used between filters having different group value).</param> /// <param name="columnName">Column name.</param> /// <param name="filterOperator">Filter operator.</param> /// <param name="value">Value to add.</param> /// <param name="accentSensitivity">Accent sensitivity enumeration.</param> public static void Add(this IList <Filter> filters, int orGroup, string columnName, FilterOperator filterOperator, object value, AccentSensitivity accentSensitivity = AccentSensitivity.Without) { if (!string.IsNullOrEmpty(columnName)) { filters.Add(new Filter(orGroup, columnName, filterOperator, value, accentSensitivity)); } }
/// <summary> /// Constructor. /// </summary> /// /// <param name="columnName"> /// Column name. /// </param> /// /// <param name="filterOperator"> /// Filter operator. /// </param> /// /// <param name="accentSensitivity"> /// Accent sensitivity enumeration. /// </param> public Filter(string columnName, FilterOperator filterOperator, AccentSensitivity accentSensitivity = AccentSensitivity.Without) : this(0, columnName, filterOperator, accentSensitivity) { }
/// <summary> /// Constructor. /// </summary> /// /// <param name="orGroup"> /// Or group (filters with the same group value will be linked with AND operand. OR operand is used between filters having different group value). /// </param> /// /// <param name="columnName"> /// Column name. /// </param> /// /// <param name="filterOperator"> /// Filter operator. /// </param> /// /// <param name="value"> /// Value to add. /// </param> /// /// <param name="accentSensitivity"> /// Accent sensitivity enumeration. /// </param> public Filter(int orGroup, string columnName, FilterOperator filterOperator, object value, AccentSensitivity accentSensitivity = AccentSensitivity.Without) : this(orGroup, columnName, filterOperator, accentSensitivity) { if (filterOperator == FilterOperator.Between || filterOperator == FilterOperator.In || filterOperator == FilterOperator.NotIn) { this.Values = value as IEnumerable; } else { this.Value = value; } }