Example #1
0
        /// <summary>
        /// 向规约追加“非”的条件
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="spec"></param>
        /// <returns></returns>
        public static IConditionSpecification <T> Not <T>(this IConditionSpecification <T> spec)
        {
            if (spec == null)
            {
                throw new ArgumentNullException("spec");
            }

            return((IConditionSpecification <T>)spec.Provider.CreateSpecification(spec.ShardParams, spec.CriteriaExpression.Not()));
        }
Example #2
0
        /// <summary>
        /// 向规约追加“和”的条件
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="spec"></param>
        /// <param name="expr"></param>
        /// <returns></returns>
        public static IConditionSpecification <T> And <T>(this IConditionSpecification <T> spec, Expression <Func <T, bool> > expr)
        {
            if (spec == null)
            {
                throw new ArgumentNullException("spec");
            }
            if (expr == null)
            {
                throw new ArgumentNullException("expr");
            }

            return((IConditionSpecification <T>)spec.Provider.CreateSpecification(spec.ShardParams, spec.CriteriaExpression.And(expr)));
        }
 /// <inheritdoc />
 public JavaScriptSpecification()
 {
     ConditionSpecification = new JavaScriptConditions();
 }