Ejemplo n.º 1
0
        // Executes a query with a collection result.
        public IEnumerable <T> ExecuteCollection <T> (QueryModel queryModel)
        {
            var commandData = HqlGeneratorQueryModelVisitor.GenerateHqlQuery(queryModel);
            var query       = commandData.CreateQuery(_session);

            return(query.Enumerable <T> ());
        }
        private IQuery CreateNHQuery(ISession session, Expression queryExpression)
        {
            // 使用 QueryParser
            // 将表达式转换为 QueryModel
            QueryModel queryModel = QueryParser.CreateDefault().GetParsedQuery(queryExpression);

            // 有了 QueryModel 之后
            // 通过 QueryModelVisitorBase 的 Visitor 方法进行数据解析
            return(HqlGeneratorQueryModelVisitor.GenerateHqlQuery(queryModel).CreateQuery(session));
        }
Ejemplo n.º 3
0
        private IQuery CreateNHQuery(ISession session, Expression queryExpression)
        {
            var queryModel = new QueryParser().GetParsedQuery(queryExpression);

            return(HqlGeneratorQueryModelVisitor.GenerateHqlQuery(queryModel).CreateQuery(session));
        }