public bool ConditionMet(Term managedItemSourceTerm) { string termValue = managedItemSourceTerm.Runtime.SetValue; if (string.IsNullOrEmpty(termValue) || (termValue == Term._SET_VALUE_DEFAULT)) termValue = managedItemSourceTerm.DisplayValue(""); TextTerm tt = managedItemSourceTerm as TextTerm; if (tt != null) return ConditionMet(tt); else { switch (_oper) { case XMLNames._TermDependencyOperator_Equals: return termValue.CompareTo(_value1) == 0; case XMLNames._TermDependencyOperator_NotEqual: return termValue.CompareTo(_value1) != 0; case XMLNames._TermDependencyOperator_GreaterThan: return termValue.CompareTo(_value1) > 0; case XMLNames._TermDependencyOperator_LessThan: return termValue.CompareTo(_value1) < 0; case XMLNames._TermDependencyOperator_NoLessThan: return termValue.CompareTo(_value1) >= 0; case XMLNames._TermDependencyOperator_NoMoreThan: return termValue.CompareTo(_value1) <= 0; case XMLNames._TermDependencyOperator_Contains: return termValue.Contains(_value1); case XMLNames._TermDependencyOperator_StartsWith: return termValue.StartsWith(_value1); case XMLNames._TermDependencyOperator_EndsWith: return termValue.EndsWith(_value1); case XMLNames._TermDependencyOperator_Between: return ((termValue.CompareTo(_value1) >= 0) && (termValue.CompareTo(_value2) <= 0)); default: return false; } } }