Esempio n. 1
0
        public static CommandData GenerateHqlQuery(QueryModel queryModel)
        {
            var visitor = new HqlGeneratorQueryModelVisitor();

            visitor.VisitQueryModel(queryModel);
            return(visitor.GetHqlCommand());
        }
Esempio n. 2
0
        public static CommandData GenerateHqlQuery(QueryModel queryModel)
        {
            var visitor = new HqlGeneratorQueryModelVisitor();

            // 自定义的 QueryModelVisitor
            // 对数据进行解析
            // 解析的数据存储在 _queryParts 和 _parameterAggregator 两个变量中
            visitor.VisitQueryModel(queryModel);

            // 通过两个临时变量构建 CommmanData
            // 此对象回可以返回 NHibernate.IQuery
            // 从而可以查询数据库
            return(visitor.GetHqlCommand());
        }