Esempio n. 1
0
        public override Expression <Func <EFProduct, bool> > ExpressionForSpecification(ISpecification <Product, IProductSpecificationVisitor> spec)
        {
            var visitor = new ProductEFExpressionVisitor();

            spec.Accept(visitor);
            return(visitor.Expr);
        }
Esempio n. 2
0
        public override Expression <Func <DBUser, bool> > ConvertSpecToExpression(ISpecification <User, IUserSpecificationVisitor> spec)
        {
            var visitor = new UserEFExpressionVisitor();

            spec.Accept(visitor);
            return(visitor.Expr);
        }
Esempio n. 3
0
        public IList <TEntity> Find <TEntity>(ISpecification <TEntity> spec) where TEntity : class, IIdAccessor
        {
            var session = Factory.OpenSession();
            var query   = session.QueryOver <TEntity>();

            var visitor = new QueryOverSpecificationVisitor <TEntity>(query);

            spec.Accept(visitor);

            var list = query.List();

            session.Close();
            return(list);
        }
Esempio n. 4
0
        public IList <TResult> Find <TEntity, TResult>(ISpecification <TEntity> spec, Mapping <TEntity, TResult> map)
            where TEntity : class, IIdAccessor
        {
            var session = Factory.OpenSession();
            var query   = session.QueryOver <TEntity>();

            var visitor = new QueryOverSpecificationVisitor <TEntity>(query);

            spec.Accept(visitor);

            query.Select(map.ToProjections()).TransformUsing(Transformers.AliasToBean <TResult>());

            var list = query.List <TResult>();

            session.Close();
            return(list);
        }
 public override Expression <Func <Todo, bool> > ConvertSpecToExpression(ISpecification <TodoAggregate, ITodoSpecificationVisitor> spec)
 {
     spec.Accept(this);
     return(this.Expr);
 }