欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASP.NET Aries 高级开发教程:使用存储过程(番外篇)

程序员文章站 2022-03-20 10:14:50
前言: 发现这个问题,有不少人提起过,所以就简单写成文章吧。 接下来看如何在Aries 框架中使用存储过程,整体步骤和绑定普通视图差不多。 步骤一:新建一个空视图。 可以在SqlCode管理中,创建一个空的视图,主要用于显示的表结构: 所以select 的空字段名,和最终存储过程出来的字段名一致即可 ......

前言:

发现这个问题,有不少人提起过,所以就简单写成文章吧。

接下来看如何在aries 框架中使用存储过程,整体步骤和绑定普通视图差不多。

步骤一:新建一个空视图。

可以在sqlcode管理中,创建一个空的视图,主要用于显示的表结构:

所以select 的空字段名,和最终存储过程出来的字段名一致即可。

ASP.NET Aries 高级开发教程:使用存储过程(番外篇)

步骤二:页面调用v_p_xxx

<html>
<body>
    <table id="grid"></table>

</body>
</html>

<script type="text/javascript">
    var dg = new ar.datagrid("v_p_xxx");
    dg.bind();
</script>

上面两步,和普通视图一样,页面呈现之后,也可以开始配置下表头。

步骤三:根据v_p_xxx名称,重写select方法,调存储过程,并输出数据。

public class democontroller : aries.core.controller
    {
        protected override mdatatable select(gridconfig.selecttype st)
        {
            switch (objname)
            {
                case "v_p_xxx":
                    using (mproc proc = new mproc("存储过程名"))
                    {
                        proc.set("参数a", 1);
                        proc.set("参数b", "sdfd");
                        return proc.exemdatatable();
                    }
                case "v_test"://处理demo中文本数据库
                    mdatatable dt = null;
                    using (maction action = new maction(crossdb.getenum("demo_testa")))
                    {
                        dt = action.select();
                    }
                    dt.joinonname = "id";
                    mdatatable joindt = dt.join("demo_testb", "id");
                    return joindt.select(pageindex, pagesize, getwhere() + getorderby("id"), gridconfig.getselectcolumns(objname, st));
            }
            return base.select(st);
        }
    }

这样就打完收工了。