/// <summary> /// See <see cref="IFilterControl.GetFilterClause"/> /// </summary> public IFilterClause GetFilterClause() { if (_filterControls.Count == 0) { return(_clauseFactory.CreateNullFilterClause()); } ICustomFilter filterUi = _filterControls[0]; IFilterClause clause = filterUi.GetFilterClause(_clauseFactory); for (int i = 1; i < _filterControls.Count; i++) { filterUi = _filterControls[i]; clause = _clauseFactory.CreateCompositeFilterClause(clause, FilterClauseCompositeOperator.OpAnd, filterUi.GetFilterClause(_clauseFactory)); } return(clause); }
public void Test_AddStaticFilterClause() { //---------------Set up test pack------------------- IFilterControl filterControl = GetControlFactory().CreateFilterControl(); //---------------Execute Test ---------------------- const string propertyName = "TestColumn2"; const string filtervalue = "FilterValue"; filterControl.AddStaticStringFilterClause(propertyName, FilterClauseOperator.OpGreaterThan, filtervalue); //---------------Test Result ----------------------- Assert.AreEqual(1, filterControl.FilterControls.Count); ICustomFilter control = filterControl.FilterControls[0]; Assert.AreEqual(propertyName, control.PropertyName); Assert.AreEqual(FilterClauseOperator.OpGreaterThan, control.FilterClauseOperator); IFilterClause filterClause = control.GetFilterClause(new DataViewFilterClauseFactory()); Assert.AreEqual(string.Format("{0} > '{1}'", propertyName, filtervalue), filterClause.GetFilterClauseString()); }