/// <summary> /// 根据数据查询的条件标记获取该标记的描述。 /// </summary> /// <param name="condition"></param> /// <returns></returns> public string GetConditionDescByVal(DataFilterConditions queryCondition) { switch (queryCondition) { case DataFilterConditions.Equal: return("等于"); case DataFilterConditions.NotEqual: return("不等于"); case DataFilterConditions.GreaterOrEqual: return("大于或等于"); case DataFilterConditions.Greater: return("大于"); case DataFilterConditions.Include: return("包含"); case DataFilterConditions.NotInclude: return("不包含"); case DataFilterConditions.LessOrEqual: return("小于或等于"); case DataFilterConditions.Less: return("小于"); case DataFilterConditions.Between: return("介于"); default: return(null); } }
/// <summary> /// 创建需要进行过滤查询的字段描述信息。 /// </summary> /// <param name="propertyName"></param> /// <param name="queryValue"></param> /// <param name="filterCondition">过滤条件</param> /// <param name="limited">是否为限制列</param> public QueryParameterInfo(string propertyName, object queryValue, DataFilterConditions filterCondition, bool limited) { _PropertyName = propertyName; _Value = queryValue; _Condition = filterCondition; _Limited = limited; }
/// <summary> /// 追加参数。 /// </summary> /// <param name="paramName"></param> /// <param name="value"></param> /// <param name="condition"></param> /// <returns></returns> public QueryParameterInfo AddParameterInfo(string paramName, object value, DataFilterConditions condition) { QueryParameterInfo newParm = new QueryParameterInfo(paramName, value, condition); _DataList.Add(newParm); return(newParm); }
/// <summary> /// 值之间的条件比较。 /// </summary> /// <param name="srcValue"></param> /// <param name="desValue"></param> /// <param name="desValue2">在between 操作时才有效果</param> /// <param name="queryCondition"></param> /// <returns></returns> public bool ValueCompare(object srcValue, object desValue, object desValue2, DataFilterConditions queryCondition) { if (srcValue == null || srcValue == System.DBNull.Value) { srcValue = string.Empty; } if (desValue == null || desValue == System.DBNull.Value) { desValue = string.Empty; } int re = (new CaseInsensitiveComparer()).Compare(srcValue, desValue); switch (queryCondition) { case DataFilterConditions.Equal: return(re == 0); case DataFilterConditions.NotEqual: return(re != 0); case DataFilterConditions.GreaterOrEqual: return(re > 0 || re == 0); case DataFilterConditions.Greater: return(re > 0); case DataFilterConditions.Include: return(srcValue.ToString().IndexOf(desValue.ToString()) > -1); case DataFilterConditions.NotInclude: return(srcValue.ToString().IndexOf(desValue.ToString()) < 0); case DataFilterConditions.LessOrEqual: return(re < 0 || re == 0); case DataFilterConditions.Less: return(re < 0); case DataFilterConditions.Between: int re2 = (new CaseInsensitiveComparer()).Compare(srcValue, desValue2); return((re > 0 || re == 0) && (re2 < 0 || re2 == 0)); default: return(false); } }
/// <summary> /// 创建需要进行过滤查询的字段描述信息。 /// </summary> /// <param name="propertyName"></param> /// <param name="queryValue"></param> /// <param name="filterCondition"></param> public QueryParameterInfo(string propertyName, object queryValue, DataFilterConditions filterCondition) : this(propertyName, queryValue, filterCondition, false) { }