示例#1
0
        /// <inheritdoc />
        public void Delete(Expression <Func <T, bool> > condition)
        {
            Check.NotNull(condition, nameof(condition));

            ISqlExpressionVisitor generator = _provider.GetExpressionVisitor();

            WhereExpression where = generator.GenerateWhereCondition(condition.Body);

            _deleteExpressions.Add(where);
        }
示例#2
0
        void IQueryBaseInternal.ApplyQueryFilter(IDatabaseMapper databaseMapper, ISqlExpressionVisitor expressionVisitor)
        {
            SelectExpression   select = SelectExpression;
            IQueryBaseInternal query  = select?.OriginalQuery;

            if (query != null && !query.IgnoreQueryFilters)
            {
                TableInfo tableInfo = databaseMapper.GetTableInfo(select.EntityType);
                if (tableInfo.QueryFilter != null)
                {
                    WhereExpression queryFilter =
                        expressionVisitor.GenerateWhereCondition(tableInfo.QueryFilter, DefaultQueryFilterParameterNamePrefix);
                    select.SetWhereExpression(queryFilter);
                }
            }
        }