public static CommandData GenerateHqlQuery(QueryModel queryModel) { var visitor = new HqlGeneratorQueryModelVisitor(); visitor.VisitQueryModel(queryModel); return(visitor.GetHqlCommand()); }
public static CommandData GenerateHqlQuery(QueryModel queryModel) { var visitor = new HqlGeneratorQueryModelVisitor(); // 自定义的 QueryModelVisitor // 对数据进行解析 // 解析的数据存储在 _queryParts 和 _parameterAggregator 两个变量中 visitor.VisitQueryModel(queryModel); // 通过两个临时变量构建 CommmanData // 此对象回可以返回 NHibernate.IQuery // 从而可以查询数据库 return(visitor.GetHqlCommand()); }