Esempio n. 1
0
        /// <summary>
        /// 与逻辑运算
        /// </summary>
        /// <typeparam name="T">实体类型</typeparam>
        /// <param name="expLeft">表达式1</param>
        /// <param name="propertyName">属性名称</param>
        /// <param name="value">属性值</param>
        /// <param name="operator">操作符</param>
        /// <exception cref="MissingFieldException"></exception>
        /// <exception cref="NotSupportedException"></exception>
        /// <returns></returns>
        public static Expression <Func <T, bool> > And <T>(this Expression <Func <T, bool> > expLeft,
                                                           string propertyName, object value, SQLOperator @operator)
        {
            var expRight = SQLPredicate.Create <T>(propertyName, value, @operator);

            return(expLeft.And(expRight));
        }
Esempio n. 2
0
        /// <summary>
        /// 与逻辑运算
        /// </summary>
        /// <typeparam name="T">实体类型</typeparam>
        /// <typeparam name="TKey">属性类型</typeparam>
        /// <param name="expLeft">表达式1</param>
        /// <param name="keySelector">属性选择</param>
        /// <param name="value">值</param>
        /// <param name="operator">操作符</param>
        /// <exception cref="ArgumentNullException"></exception>
        /// <exception cref="NotSupportedException"></exception>
        /// <returns></returns>
        public static Expression <Func <T, bool> > And <T, TKey>(this Expression <Func <T, bool> > expLeft,
                                                                 Expression <Func <T, TKey> > keySelector, TKey value, SQLOperator @operator)
        {
            if (keySelector is null)
            {
                throw new ArgumentNullException(nameof(keySelector));
            }
            var expRight = SQLPredicate.Create(keySelector, value, @operator);

            return(expLeft.And(expRight));
        }
Esempio n. 3
0
 /// <summary>
 /// 转换为谓词筛选表达式
 /// </summary>
 /// <exception cref="NotSupportedException"></exception>
 /// <returns></returns>
 public Expression <Func <T, bool> > ToPredicate() => SQLPredicate.Create <T>(Member, Value, Operator);