基于NVelocity简单搭建动态查询报表功能

基于NVelocity搭建动态查询模块

NVelocity是基于java模板语言Velocity的一个.net扩展包。可用于动态解析字符串。支持语法有#if  #foreach  和$变量等。

与此功能相近的有RazorEngine引擎。但是性能比较差强人意。两段引擎生成代码与测试时间比较如下图:

 

 

       不知道为什么Razor这么慢。不管了,开始干活。

目标:

       实现动态配置的报表查询功能。

实现:

1.     原型:

1) 查询条件配置。生成变量和条件。

 

 

2) 配置sql语句。

 

 

3) 查询执行结果。

 

 

2.     原理:

   Sql数据保存在数据库,通过NVelocityHelper转化为正常语句。然后交给ado执行。

 

posted on 2019-04-02 09:45  kloszhu  阅读(139)  评论(0)    收藏  举报

导航