コード例 #1
0
        public string ToSqlString(IPredicateQuery predicateQuery)
        {
            var columnName = predicateQuery.GetColumnName(_propertyName);
            var parameter  = predicateQuery.NewQueryParameter(_value);

            return($"{columnName} like {parameter}");
        }
コード例 #2
0
        public string ToSqlString(IPredicateQuery predicateQuery)
        {
            var left  = Left.ToSqlString(predicateQuery);
            var right = Right.ToSqlString(predicateQuery);

            return($"({left} {Operator} {right})");
        }
コード例 #3
0
        public string ToSqlString(IPredicateQuery predicateQuery)
        {
            // 'columnName in ()' is always false
            if (Values.Length == 0)
            {
                return("1=0");
            }

            // Generates:
            //  columnName in (@p1, @p2, @p3)

            var array = new StringBuilder();

            for (var i = 0; i < Values.Length; i++)
            {
                var parameter = predicateQuery.NewQueryParameter(Values[i]);

                if (i > 0)
                {
                    array.Append(", ");
                }
                array.Append(parameter);
            }

            var columnName = predicateQuery.GetColumnName(_propertyName);
            var inClause   = predicateQuery.Dialect.InSelectOperator(array.ToString());

            return($"{columnName} {inClause}");
        }
コード例 #4
0
        /// <summary>
        ///     Appends the specified predicate query.
        /// </summary>
        /// <param name="predicateQuery">The predicate query.</param>
        /// <param name="type">The 类型.</param>
        public IPredicateQuery <TEntity> Append(IPredicateQuery <TEntity> predicateQuery, PredicateLinkType type)
        {
            if (predicateQuery == null)
            {
                throw new ArgumentNullException(nameof(predicateQuery));
            }

            return(Append(predicateQuery.BuildPredicateExpression(), type));
        }
コード例 #5
0
        /// <summary>
        ///     Gets the list.
        /// </summary>
        /// <param name="query">查询</param>
        /// <returns>IEnumerable&lt;TaskQueue&gt;.</returns>
        /// <exception cref="ArgumentNullException">query</exception>
        public IEnumerable <TaskQueue> GetList(IPredicateQuery <TaskQueue> query)
        {
            if (query == null)
            {
                throw new ArgumentNullException(nameof(query));
            }

            return(null);
            //   return Repository<ITaskQueueRepository>().GetList(query);
        }
コード例 #6
0
        public void SearchUsedAlias(IPredicateQuery predicateQuery)
        {
            if (_predicates.Count == 0)
            {
                return;
            }


            for (var i = 0; i < _predicates.Count; i++)
            {
                _predicates[i].SearchUsedAlias(predicateQuery);
            }
        }
コード例 #7
0
ファイル: Junction.cs プロジェクト: JamieJia/OrchardCore-1
        public string ToSqlString(IPredicateQuery predicateQuery)
        {
            if (_predicates.Count == 0)
            {
                return(EmptyExpression);
            }

            var sqlBuilder = new StringBuilder();

            sqlBuilder.Append('(');

            for (var i = 0; i < _predicates.Count - 1; i++)
            {
                sqlBuilder.Append(_predicates[i].ToSqlString(predicateQuery));
                sqlBuilder.Append(Operation);
            }

            sqlBuilder.Append(_predicates[_predicates.Count - 1].ToSqlString(predicateQuery));

            sqlBuilder.Append(')');

            return(sqlBuilder.ToString());
        }
コード例 #8
0
        public string ToSqlString(IPredicateQuery predicateQuery)
        {
            var expression = _predicate.ToSqlString(predicateQuery);

            return($"not ({expression})");
        }
コード例 #9
0
 public IAsyncEnumerable <TEntity> AsAsyncEnumerable <TEntity>(IPredicateQuery <TEntity> query) where TEntity : class
 {
     return(_context.Set <TEntity>().Where(query.Predicate).AsAsyncEnumerable());
 }
コード例 #10
0
 public IQueryable <TEntity> AsQueryable <TEntity>(IPredicateQuery <TEntity> query) where TEntity : class
 {
     return(_context.Set <TEntity>().Where(query.Predicate));
 }
コード例 #11
0
 /// <summary>
 ///     或s the specified predicate query.
 /// </summary>
 /// <param name="predicateQuery">The predicate query.</param>
 public IPredicateQuery <TEntity> Or(IPredicateQuery <TEntity> predicateQuery)
 {
     return(Append(predicateQuery, PredicateLinkType.Or));
 }
コード例 #12
0
 public void SearchUsedAlias(IPredicateQuery predicateQuery)
 {
     Left.SearchUsedAlias(predicateQuery);
     Right.SearchUsedAlias(predicateQuery);
 }
コード例 #13
0
 public void SearchUsedAlias(IPredicateQuery predicateQuery)
 {
     _predicate.SearchUsedAlias(predicateQuery);
 }
コード例 #14
0
 public void SearchUsedAlias(IPredicateQuery predicateQuery)
 {
     predicateQuery.SearchUsedAlias(_propertyName);
 }